首页 > 编程笔记 > Java笔记 阅读:68

JSP JSTL <sql:transaction>标签:事务处理

<sql:transaction> 标签用于在事务中处理 SQL 操作,如果 SQL 操作有错误将不会执行 <sql:transaction> 标签中的所有 SQL 操作。

语法:

<sql:transaction[dataSource="dataSource"]
  [isolation=isolationLevel]>
  <sql:query>and<sql:update>statements
</sql:transaction>
  isolationLevel:="read_committed"
  |"read_uncommitted"
  |"repeatable_read"
  |"serializable"

参数说明:

示例

本示例应用 <sql:transaction> 标签处理事务中对用户密码更改的 sql 操作,关键代码如下:
<%@page language="java" contentType="text/html;charset=GBK" pageEncoding="GBK"%>
  <%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
    <sql:setDataSource driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"
                       url="jdbc:microsoft:sqlserver://localhost:1433;databaseName=db_testH"
                       user="sa"password=""var="conn"/>
    <sql:transaction dataSource="${conn}" isolation="read_uncommitted">
      <sql:update sql="UPDATE tb_user SET pwd=?WHERE username=?">
        <sql:param value="1224"></sql:param>
        <sql:param value="zs"></sql:param>
      </sql:update>
      <sql:update sql="UPDATE tb_user SET id=?WHERE username=?">
        <sql:param value="123"></sql:param>
        <sql:param value="zs"></sql:param>
      </sql:update>
    </sql:transaction>
运行本示例,如果第二条更新语句出现错误,则第一条更新语句的更新结果将会被回滚。

爱面试的程序媛,一个分享面试经验的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,定时分享程序员面试的那点事。

面试如何造火箭?工作如何拧螺丝?都在这个公号哦。

扫描二维码关注公众号,免费领取价值 1000 元的求职面试资料(限时免费)!

当你决定关注「爱面试的程序媛」,你已然超越了90%的程序员!

爱面试的程序媛二维码
微信扫描二维码关注

所有教程

优秀文章