(4)JSTL的SQL标签库
jstl的SQL标签库
SQL tag Library中的标签用来提供在 JSP 页面中可以与数据库进行交互的功能
Database access标签库有以下6组标签来进行工作:
<sql:setDataSource>、<sql:query>、<sql:update>、<sql:transaction>、<sql:param>、<sql:dateParam>
引入SQL标签库的指令代码为: <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
1.<sql:setDataSource> 标签:用于设置数据源
定义一个数据源并保存在"dataSource"变量内
<sql:setDataSource
var="dataSource"
url="jdbc:mysql://localhost:3306/exe?charachterEncoding=UTF-8"
driver="com.mysql.jdbc.Driver"
user="root"
password="root"/>
2.<sql:query> 标签:用于查询
它标签体内可以是一句查询 SQL,保存的结果是 javax.servlet.jsp.jstl.sql.Result 类型的实例
<!--使用<sql:query> 标签启动查询,将结果保存到变量"queryResults"中-->
<sql:query var="queryResults" dataSource="${dataSrc}">
select * from table1
</sql:query>
<!--要取得结果集中的数据可以使用 <c:forEach> 循环来进行-->
<c:forEach var="row" items="${queryResults.rows}">
<tr>
<td>${row.userName}</td>
<td>${row.passWord}</td>
</tr>
</c:forEach>
其中,"row"是javax.servlet.jsp.jstl.sql.Result实例的变量属性之一,用来表示数据库表中的"列"集合
循环时,通过"${row.XXX}"表达式可以取得每一列的数据,"XXX"是表中的列名
3.<sql:update>标签:用于更新数据库,它的标签体内可以是一句更新的 SQL 语句
<sql:update sql="INSERT INTO user(username,pwd) VALUES('aa','123456')"/>
<sql:update var="rs" dataSource="${dataSource}">
drop table if exists table1 //drop
insert into table1(username,pwd) values('a','123') //insert
create table user(id int,name varchar(50),pwd varchar(50)) //create
</sql:update>
4.<sql:transaction>标签:用于事务处理
<sql:transaction> 标签用于数据库的事务处理,在该标签体内可以使用 <sql:update> 标签和 <sql:query> 标签,而 <sql:transaction> 标签的事务管理将作用于它们之上。
<sql:transaction> 标签对于事务处理定义了 read_committed 、 read_uncommitted 、 repeatable_read 、 serializable4 个隔离级别。
<sql:transaction>
<sql:update sql="INSERT INTO user(username,pwd) VALUES('aa','123456')"/>
<sql:update sql="DELETE user WHERE username='bb'"/>
</sql:transaction>
5.<sql:param> 、 <sql:dateParam> 标签:用于向 SQL 语句提供参数
这两个标签用于向 SQL 语句提供参数,就好像程序中预处理 SQL 的“ ? ”一样
<sql:param> 标签传递除 java.util.Date 类型以外的所有相融参数,
<sql:dateParam> 标签则指定必须传递 java.util.Date 类型的参数。
<sql:query var="queryResults" dataSource="${dataSrc}">
select * from user where username=?
<sql:param value="${param.username}">
<sql:dateParam value ="${date}" type="timestamp" />
</sql:query>
(4)JSTL的SQL标签库的更多相关文章
- 转: JSTL SQL标签库 使用
SQL标签库 JSTL提供了与数据库相关操作的标签,可以直接从页面上实现数据库操作的功能,在开发小型网站是可以很方便的实现数据的读取和操作.本章将详细介绍这些标签的功能和使用方法. SQL标签库从功能 ...
- JSP标准标签库(JSTL)--SQL标签库 sql
了解即可.SQL标签库 No. 功能分类 标签名称 描述 1 数据源标签 <sql:setDataSource> 设置要使用的数据源名称 2 数据库操作标签 <sql:query&g ...
- JSTL SQL标签库 使用
推荐博客:http://blog.sina.com.cn/s/blog_4f925fc30101820u.html 怕博主把原文删了,所以在这里先保存一下. SQL标签库 JSTL提供了与数据库相关操 ...
- 小峰servlet/jsp(7)jstl国际化标签库、sql标签库等
一.jstl国际化标签库: fmt:setLocale 设定用户所在的区域: fmt:formatDate 对日期进行格式化 fmt:requestEncoding 设置所有的请求编码; fmt: ...
- java web(一) 使用sql标签库+tomcat+mysql手动创建一个jsp练习总结
2016-09-0111:06:53 使用sql标签库+tomcat+mysql手动创建一个jsp 1. 1.1安装tomcat ...
- JSTL之迭代标签库
JSTL之迭代标签库 JSTL的全称是 Java Server Pages Standard Tag Library,翻译过来就是JSP标准标签库,它包含了在开发JSP页面时经常用到的一组标准标签.这 ...
- (5)JSTL的xml标签库
Jstl的XML标签库 JSTL提供了操作xml文件的标签库,使用xml标签库可以省去使用Dom和SAX标签库的繁琐,能轻松的读取xml文件的内容. <%@ taglib uri="h ...
- 12.javaweb SQL标签库
一.说明及使用 1, 首先要知道,开发中绝对不会SQL标签库在JSP中进行数据库操作,学习SQL标签库只是作为一个只是扩展 2, SQL标签库分类 2.1<sql:setDataSource ...
- JSTL (标准标签库)
JSTL(标准标签库) 作用: Web程序员能够利用JSTL和EL来开发Web程序,取代传统直接在页面上嵌入Java程序(Scripting)的做法,以提高程序的阅读性.维护性和方便性. 使用方法:J ...
随机推荐
- OpenGL ES入门详解
http://blog.csdn.net/wangyuchun_799/article/details/7736928 1.决定你要支持的OpenGL ES的版本.目前,OpenGL ES包含1.1 ...
- unity调用Android的jar包
简介 有一些手机功能,Unity没有提供相应的接口,例如震动,例如不锁屏,例如GPS,例如... 有太多的特殊功能Unity都没有提供接口,这时候,我们就需要通过使用Android原生的ADT编辑器去 ...
- 2018全球十大测试工具Top2 Katalon
引言 由Capgemini,Sogeti和Micro Focus发布的2017-2018年世界质量报告中,Katalon超越老牌测试工具UFT(源自QTP)成为黑马新秀,在全球十大自动化测试工具中排名 ...
- 慕课笔记-Java入门第三季
1.自定义异常 自定义异常必须继承Exception类或者其子类. 2.字符串 String对象创建后则不能被修改,是不可变的,所谓的修改其实是创建了新的对象. 多次创建的字符常量,Java编译程序只 ...
- GPDB外部表创建示例
创建以|为分隔符的外部表CREATE EXTERNAL TABLE ext_expenses ( name text,date date, amount float4, category text, ...
- CentOS(6、7)修改主机名(hostname)
centos6需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. /etc/sysconfig/n ...
- 普通平衡树与文艺平衡树的splay代码
主要综合借鉴了yyb和马前卒两位大佬的. //普通平衡树 #include <cstdio> #include <cctype> #include <cstring> ...
- ZOJ Saddle Point 数学思维题
http://acm.zju.edu.cn/onlinejudge/showContestProblem.do?problemId=5564 根据它的定义是行最小,列最大. 可以证明鞍点是唯一的. ...
- Storm编程入门API系列之Storm的Topology多个tasks数目控制实现
前期博客 Storm编程入门API系列之Storm的Topology默认Workers.默认executors和默认tasks数目 Storm编程入门API系列之Storm的Topology多个Wor ...
- 5、两个栈实现队列------------>剑指offer系列
题目 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 思路 栈1: 用于入队列存储 栈2: 出队列时将栈1的数据依次出栈,并入栈到栈2中 栈2出栈即栈1的底部数据 ...