sql:setDataSource>
标签设定数据源
语法结构:
sql:setDataSource url="jdbcUrl" driver="driverClassName" user="userName" password="password" [var = "varName"][scope="{page | request | session | application}"] />
sql:update>
标签进行增删改的操作
第一种格式:
sql:update sql="sqlUpdate" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"] />
eg:
%@ page contentType="text/html;charset=GBK"%> %@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%> %@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> html> head> title>测试标签/title> /head> sql:setDataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" user="liky" password="redhat" url="jdbc:sqlserver://localhost:1433;DatabaseName=csu" var="db" /> body> !-- 这里使用update标签创建一个表 --> sql:transaction dataSource="${db}"> sql:update var="update" scope="page"> if exists(select 1 from sysobjects where name='tmp') drop table tmp create table tmp ( id int identity(1,1) primary key, name varchar(20), pass varchar(20) ) /sql:update> /sql:transaction> !-- 这里使用update标签修改表的结构,添加一个列 --> sql:transaction dataSource="${db}"> sql:update var="update" scope="page"> alter table tmp add age tinyint /sql:update> /sql:transaction> br> /body> /html>
第二种格式是将SQL语句作为本体内容
%@page language="java" contentType="text/html;charset=gb2312"%> %@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %> !DOCTYPE html> html> head> title>Update标签添加数据/title> /head> body> %-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%> sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver" user="root" password="zhangda890126;;"/> %-- 通过update标签添加数据 --%> sql:update> INSERT INTO user(userid,username,password) VALUES(null,"admin1","root1"); /sql:update> /body> /html>
sql:query>标签
用来查询数据库中的数据
第一种格式:
sql:query sql="sqlQuery" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"]maxRows="" startRow="startRow" />
第二种格式是将SQL语句作为本体内容
%@page language="java" contentType="text/html;charset=gb2312"%> %@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %> %@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> !DOCTYPE html> html> head> title>Query标签的使用/title> /head> body> %-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%> sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver" user="root" password="zhangda890126;;"/> %-- 通过update标签添加数据 --%> sql:query var="result"> SELECT * FROM user /sql:query> %-- 显示所有的数据 --%> center> h3>查询所有的数据/h3> table border="1"> tr> td>userID/td> td>userName/td> td>password/td> /tr> %-- 使用foreach循环输出所有的值 --%> c:forEach items="${result.rows}" var = "row"> tr> td>${row.userid}/td> td>${row.username}/td> td>${row.password}/td> /tr> /c:forEach> /table> /center> /body> /html>
sql:param>标签和sql:dateParam>标签
sql:param>有两种格式即:带有本体内容和不带本体内容的
不带本体内容的格式为
sql:param value="value" />
带本体内容的格式为
sql:param> 本体内容 /sql:param>
sql:dateParam>标签的格式为:
sql:dateParam value="value" [type="{timestamp|time|date}"] />
如果参数与时间和日期有关的话就使用sql:dateParam>标签
sql:transaction>标签
提供存取数据库时的一种安全机制(事物处理安全机制)
格式为:
sql:transaction [dataSource="dataSource"] [isolation="read_committed|read_uncomited|repeatabl_read|serializable"]> sql:update> or sql:query> /sql:transaction>