Spring的jsp标签库
1,主要有两个
一个用于渲染HTML表单标签, 这些标签会绑定model中的某个属性
另一个包换了一些工具类标签
2,将表单绑定到模型上
包含了14个标签,海报一个人为用户展现错误的标签,它会将错误信息渲染到最终的HTML中
为了使用表单绑定库,需要在jsp页面中声明:
<%@ taglib uri="http://www.springframework.org/tags/form" prefix="sf" %>
3,通用标签库
使用前需要在jsp页面中声明:
<%@ taglib uri="http://www.springframework.org/tags" prefix="s" %>
4,展现国际化信息
通常使用<s:message/>如:
<h1><s:message code="spittr.welcome" /></h1>
Spring有多个信息源的类,他们都实现了MessageSource接口,在这些类中,更为常见和有用的是ResourceBundleMessageSource,它会从一个属性文件
中加载信息,如下
@Bean
public MessageSource messageSource() {
ResourceBundleMessageSource messageSource =
new ResourceBundleMessageSource();
messageSource.setBasename("messages");
return messageSource;
}
在这里,核心在于设置basename属性,可以设置为任意你喜欢的
另外的可选方案是ReloadableResourceBundleMessageSource,但是他能重新加载信息属性。而不必重新编译或重新启用,如下
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource =
new ReloadableResourceBundleMessageSource();
messageSource.setBasename("file:///etc/spittr/messages");
messageSource.setCacheSeconds();
return messageSource;
}
两者的关键区别在于前者是在类路径下查找,后者为应用的外部查找
5,创建URL
<s:url>,主要任务是创建URL,然后将其赋值给一个变量,或渲染到响应中
默认情况下,URL是在页面作用域内创建的,但是通过设置scope属性。我们可以让他在应用作用域内,会话作用域或域内作用域
如<s:url href="/spitter/register" var="registerUrl" scope="request" />
如果希望添加参数的话,可以使用<s:param>,如
<s:url href="/spittles" var="spittlesUrl">
<s:param name="max" value="60" />
<s:param name="count" value="20" />
</s:url>
<s:escapeBody>标签专门用来转义内容,而不是转义标签,是一个通用的转义标签,支持HTML和JavaScript转义
如
<s:escapeBody htmlEscape="true">
<h1>Hello</h1>
</s:escapeBody>
和
<s:escapeBody javaScriptEscape="true">
<h1>Hello</h1>
</s:escapeBody>
转义为到<h1>Hello</h1>
Spring的jsp标签库的更多相关文章
- Java开源JSP标签库
01displytag 与Struts结合使用最出名的一个tag主要是显示表格数据很漂亮.完善. 02cewolf tag 用来在web上显示复杂图形报表的一个jsp tag. 03Loading T ...
- 自定义JSP标签库及Properties使用
自定义JSP标签库及Properties使用 自定义JSP标签 自定义JSP标签技术是在JSP 1.1版本中才出现的,它支持用户在JSP文件中自定义标签,这样可以使JSP代码更加简洁. 这些可重用的标 ...
- 通过引入SiteMesh的JSP标签库,解决Freemarker与SiteMesh整合时,自定义SiteMesh标签的问题
不少web项目,都用到了SiteMesh.SiteMesh可以和JSP.Freemarker等模版进行整合,有一定的好处,当然也有其不好的地方.我个人觉得,如果没有必要,不要在项目中引入太多的工具和技 ...
- spring security的标签库
应用标签库:<%@ taglib prefix='security ' uri='http://www.springframework.org/security /tags' %> < ...
- JSP标签库
step1: 定义一个标签处理类:改类必须实现SimpleTag接口,在实际中是拓展它的子类SimpleTagSupport.复写doTag方法 public class MyTag extends ...
- JavaWeb学习记录(十九)——jsp标签库
1.out标签 <% //局部变量 String name="zsf>&<zz"; pageContext.se ...
- jsp标签库选择框示例
<select onchange="yearchange(this);" name="year" id="year"> < ...
- 使用Spring标签库
A.Spring标签库 Web项目若使用Spring Web MVC并使用JSP作为表现的话.从Spring2.0版本开始提供一套标签库可供使用. 使用标签库无非是易于开发,维护之类云云.这里就不阐述 ...
- Spring Security(18)——Jsp标签
目录 1.1 authorize 1.2 authentication 1.3 accesscontrollist Spring Security也有对Jsp标签的支持的标签库 ...
随机推荐
- windows系统下nginx+tomcat+redis做负载均衡和session粘滞附整套解决方案
Nginx: 在nginx-1.8.0\conf目录下找到nginx.conf文件,打开文件修改文件中http{}中的内容,在http{}中加入 upstream localhost { serve ...
- Python 并发网络库
Python 并发网络库 Tornado VS Gevent VS Asyncio Tornado:并发网络库,同时也是一个 web 微框架 Gevent:绿色线程(greenlet)实现并发,猴子补 ...
- docker在mac下安装及配置阿里云镜像加速
安装 brew cask install docker 配置 关于阿里云加速地址,下面会有详细说明 阿里云官方镜像加速 官方文档:https://help.aliyun.com/document_de ...
- tasks.json 配置 解决vscode控制台乱码问题
{ "version": "2.0.0", "command": "dotnet", "tasks" ...
- 106、Label 控制 Service的位置 (Swarm13)
参考https://www.cnblogs.com/CloudMan6/p/8038799.html 上一节我们讨论了 Service部署的两种模式,global mode 和 replicate ...
- 这38个小技巧告诉你如何快速学习MySQL数据库
1.如何快速掌握MySQL? ⑴培养兴趣兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率.当然学习MySQL 5.6也不例外.⑵夯实基础计算机领域的技术非常强调基础,刚开始学习可能还认 ...
- 企业QQ在线咨询接入
普通QQ在线咨询接入 http://wpa.qq.com/msgrd?v=3&uin=4009603616&site=qq&menu=yes; 企业QQ在线咨询接入 ...
- CentOS6.5增加挂载点容量
一.背景:因为公司虚拟机 (/) 目录容量过小,导致一些任务不能正常执行,需要给虚拟机扩容 二.操作: 初始磁盘情况: 1.使用 df 命令查看磁盘与目录的容量: [root@shaonian ~]# ...
- 2019-2020-1 20199319《Linux内核原理与分析》第九周作业
进程的切换和系统的一般执行过程 进程调度的时机 1.中断:起到切出进程指令流的作用.中断处理程序是与进程无关的内核指令流.中断类型: 硬中断:可屏蔽中断和不可屏蔽中断.高电平说明有中断请求. 软中断/ ...
- java string split 怎么保留尾部空字符串
# 不保留尾部空字符串 public class QQ { public static void main(String[] args) { String str = "a,b,c,d,&q ...