打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JSTL与Struts的结合(七)
分类:我的著作
用于解析数字的<fmt:parseNumber>标签
<fmt:parseNumber>标签用于解析一个数字,并将结果作为java.lang.Number类的实例返回。<fmt:parseNumber>标签看起来和<fmt:formatNumber>标签的作用正好相反。它的属性和描述如表9.22所示:
表9.22 <fmt:parseNumber>标签属性和说明
属性
描述
value
将被解析的字符串
type
解析格式化的类型
pattern
解析格式化模式
var
结果保存变量,类型为java.lang.Number
scope
变量的作用范围
parseLocale
以本地化的形式来解析字符串,该属性的内容应为String或java.util.Locale类型的实例
下面看一个示例。
<fmt:parseNumber value="15%" type="percent" var="num"/>
解析之后的结果为“0.15”。
用于格式化日期的<fmt:formatDate>标签
<fmt:formatDate>标签用于格式化日期。它的属性和描述如表9.23所示:
表9.23 <fmt:formatDate>标签属性和说明
属性
描述
value
格式化的日期,该属性的内容应该是java.util.Date类型的实例
type
格式化的类型
pattern
格式化模式
var
结果保存变量
scope
变量的作用范围
timeZone
指定格式化日期的时区
<fmt:formatDate>标签与<fmt:timeZone>、<fmt:setTimeZone>两组标签的关系密切。若没有指定timeZone属性,也可以通过<fmt:timeZone>、<fmt:setTimeZone>两组标签设定的时区来格式化最后的结果。
用于解析日期的<fmt:parseDate>标签
<fmt:parseDate>标签用于解析一个日期,并将结果作为java.lang.Date类型的实例返回。<fmt:parseDate>标签看起来和<fmt:formatDate>标签的作用正好相反。它的属性和描述如表9.24所示:
表9.24 <fmt:parseDate>标签属性和说明
属性
描述
value
将被解析的字符串
type
解析格式化的类型
pattern
解析格式化模式
var
结果保存变量,类型为java.lang.Date
scope
变量的作用范围
parseLocale
以的形式来解析字符串,该属性的内容为String或 java.util.Locale类型的实例
timeZone
指定解析格式化日期的
<fmt:parseNumber>和<fmt:parseDate>两组标签都实现解析为一个具体对象实例的工作,因此,这两组解析标签对var属性的字符串参数要求非常严格。就JSP页面的表示层前段来说,处理这种解析本不属于份内之事,因此<fmt:parseNumber>和<fmt:parseDate>两组标签应该尽量少用,替代工作的地方应该在服务器端表示层的后段,比如在Servlet中。
标签库
Database access标签库中的标签用来提供在JSP页面中可以与数据库进行交互的功能,虽然它的存在对于早期纯JSP开发的应用以及小型的开发有着意义重大的贡献,但是对于MVC模型来说,它却是违反规范的。因为与数据库交互的工作本身就属于业务逻辑层的工作,所以不应该在JSP页面中出现,而是应该在模型层中进行。
对于Database access标签库本书不作重点介绍,只给出几个简单示例让读者略微了解它们的功能。
Database access标签库有以下6组标签来进行工作:<sql:setDataSource>、<sql:query>、<sql:update>、<sql:transaction>、<sql:setDataSource>、<sql:param>、<sql:dateParam>。
用于设置数据源的<sql:setDataSource>标签
<sql:setDataSource>标签用于设置数据源,下面看一个示例:
<sql:setDataSource
var="dataSrc"
url="jdbc:postgresql://localhost:5432/myDB"
driver="org.postgresql.Driver"
user="admin"
password="1111"/>
该示例定义一个数据源并保存在“dataSrc”变量内。
用于查询的<sql:query>标签
<sql:query>标签用于查询数据库,它标签体内可以是一句查询SQL。下面看一个示例:
<sql:query var="queryResults" dataSource="${dataSrc}">
select * from table1
</sql:query>
该示例将返回查询的结果到变量“queryResults”中,保存的结果是javax.servlet.jsp.jstl.sql.Result类型的实例。要取得结果集中的数据可以使用<c:forEach>循环来进行。下面看一个示例。
<c:forEach var="row" items="${queryResults.rows}">
<tr>
<td>${row.userName}</td>
<td>${row.passWord}</td>
</tr>
</c:forEach>
“rows”是javax.servlet.jsp.jstl.sql.Result的属性之一,用来表示数据库表中的“列”集合,循环时,通过“${row.XXX}”表达式可以取得每一列的数据,“XXX”是表中的列名。
用于更新的<sql:update>标签
<sql:update>标签用于更新数据库,它的标签体内可以是一句更新的SQL语句。其使用和<sql:query>标签没有什么不同。
用于事务处理的<sql:transaction>标签
<sql:transaction>标签用于数据库的事务处理,在该标签体内可以使用<sql:update>标签和<sql:query>标签,而<sql:transaction>标签的事务管理将作用于它们之上。
<sql:transaction>标签对于事务处理定义了read_committed、read_uncommitted、repeatable_read、serializable4个隔离级别。
用于事务处理的<sql:param>、<sql:dateParam>标签
这两个标签用于向SQL语句提供参数,就好像程序中预处理SQL的“?”一样。<sql:param>标签传递除java.util.Date类型以外的所有相融参数,<sql:dateParam>标签则指定必须传递java.util.Date类型的参数。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
jstl标签的fmt格式化日期 String to Date
jstl中关于fmt:parseDate和fmt:formatDate的综合使用
JSTL标签的学习与应用记录
<fmt:formatDate> 标签 | w3cschool菜鸟教程
JSTL标签 参考手册
JavaScript实现checkbox全选,当只有一个时不起作用的情况也已经解决
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服