1. JSTL數據庫標籤是什麼?
是通過使用JSTL,數據庫操作可以簡化爲簡單的幾個標籤,大大提高了數據庫開發的效率和程序的可維護性
2. 如何引用JSTL數據庫標籤?
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
3. JSTL建立數據源標籤介紹:
建立數據源連接分類標籤只包含一個標籤<sql:setDataSource>,該標籤用來建立數據庫連接
語法:
1. 使用已經存在的數據源:<sql:setDataSource dataSource="dataSource" var="varName" scope="範圍" %>
2. 創建新的數據源:
<sql:setDataSource
driver="數據庫驅動程序字符串"
url="連接字符串"
user="數據庫用戶名"
password="數據庫登錄密碼"
var="數據源變量名"
scope="範圍" %>
4. 數據庫操作標籤介紹:
Ø 數據庫操作分類標籤包含5個標籤
數據庫查詢操作標籤 <sql:query>
插入、更新和刪除操作標籤 <sql:update>
查詢參數標籤 <sql:param>
日期參數標籤 <sql:dataParam>
事務處理標籤 <sql:transaction>
具體介紹:
<sql:query>標籤的功能是執行數據庫中的查詢操作。
<sql:param>標籤的功能就是向<sql:query>標籤的SQL語句中傳遞參數
<sql:update>標籤的功能是對數據庫進行插入、更新和刪除操作。
<sql:dateParam>標籤和<sql:param>標籤的功能和用法完全相同,不同之處是<sql:dateParam>標籤是用來設置日期格式的參數
<sql:transaction>標籤來實現事務處理
5. 數據庫操作標籤使用示例:
<h1>數據庫標籤使用:</h1>
<h2>數據源標籤:</h2>
<sql:setDataSource var="ds" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/news" user="root" password="root"
scope="application" />
<c:catch var="e">
<sql:query var="us" dataSource="${ds }">
select * from message
</sql:query>
</c:catch>
<c:forEach var="u" items="${us.rows }">
<c:out value="${u.uid }"></c:out>
<c:out value="${u.uname }"></c:out>
<c:out value="${u.upwd }"></c:out>
</c:forEach>
創建數據庫表操作
<sql:update var="result1" dataSource="${ds }">
<!-- 創建表的語句 -->
create table message(id int primarykey,
contextvarchar(200),
unamevarchar(20));
</sql:update>
執行情況:
<c:out value="${result1 }" />
<br>添加數據到數據庫
<!-- 一次只能執行一條insert語句 並且不能插入中文 -->
<c:catch var="e">
<sql:update var="r2" dataSource="${ds }">
insert into message values(3,"sql","sa")
</sql:update>
添加數據的執行情況:
<c:out value="${r2 }" />
</c:catch>
<br>輸出異常
<c:out value="${e }" />
<br>