JSTL详解(六)

来源:百度文库 编辑:神马文学网 时间:2024/04/27 06:49:59
标签库
Database access 标签库中的标签用来提供在 JSP 页面中可以与数据库进行交互的功能,虽然它的存在对于早期纯 JSP 开发的应用以及小型的开发有着意义重大的贡献,但是对于 MVC 模型来说,它却是违反规范的。因为与数据库交互的工作本身就属于业务逻辑层的工作,所以不应该在 JSP 页面中出现,而是应该在模型层中进行。
对于 Database access 标签库本书不作重点介绍,只给出几个简单示例让读者略微了解它们的功能。
Database access 标签库有以下 6 组标签来进行工作:
用于设置数据源的 标签
标签用于设置数据源,下面看一个示例:
var="dataSrc"
url="jdbc:postgresql://localhost:5432/myDB"
driver="org.postgresql.Driver"
user="admin"
password="1111"/>
该示例定义一个数据源并保存在“ dataSrc ”变量内。
用于查询的 标签
标签用于查询数据库,它标签体内可以是一句查询 SQL 。下面看一个示例:

select * from table1

该示例将返回查询的结果到变量“ queryResults ”中,保存的结果是 javax.servlet.jsp.jstl.sql.Result 类型的实例。要取得结果集中的数据可以使用 循环来进行。下面看一个示例。


${row.userName}
${row.passWord}


“ rows ”是 javax.servlet.jsp.jstl.sql.Result 实例的变量属性之一,用来表示数据库表中的“列”集合,循环时,通过“ ${row.XXX} ”表达式可以取得每一列的数据,“ XXX ”是表中的列名。
用于更新的 标签
标签用于更新数据库,它的标签体内可以是一句更新的 SQL 语句。其使用和 标签没有什么不同。
用于事务处理的 标签
标签用于数据库的事务处理,在该标签体内可以使用 标签和 标签,而 标签的事务管理将作用于它们之上。
标签对于事务处理定义了 read_committed 、 read_uncommitted 、 repeatable_read 、 serializable4 个隔离级别。
用于事务处理的 标签
这两个标签用于向 SQL 语句提供参数,就好像程序中预处理 SQL 的“ ? ”一样。 标签传递除 java.util.Date 类型以外的所有相融参数, 标签则指定必须传递 java.util.Date 类型的参数。