<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>