JSTL詳解(七)

          SQL相關(guān)的標簽(二)

          <sql:update>

          作用:主要是執(zhí)行插入、更新和刪除操作的標簽。另外,還有一些沒有返回結(jié)果集的sql操作也可以使用這個標簽。比如

          create table tableName(id int….);

          drop table tableName

          grant tableName   等等。。

          語法:a、沒有body的情況

                   <sql:update sql=”sqlUpdate”

          [dataSource=”dataSource”]

          [var=”varName”]

          [scope=”{page|session|request|application}”]/>

                b、有body ,并且在body中指定參數(shù)

                   <sql:update sql=”sqlUpdate”

          [dataSource=”dataSource”]

          [var=”varName”]

          [scope=”{page|session|request|application}”] >

          <sql:param>  actions

          </sql:update>

                c、有body,在body中指定sql語句和可選的參數(shù)

                   <sql:update sql=”sqlUpdate”

          [dataSource=”dataSource”]

          [var=”varName”]

          [scope=”{page|session|request|application}”] >

          Update statement

          <sql:param>  actions

          </sql:update>

           

          舉例:sql_update.jsp

          <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

          <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>

          <%@ page contentType="text/html; charset=gb2312" language="java" %>

          <html>

          <head>

            <title>JSTL:的使用</title>

          </head>

          <sql:setDataSource

            var="ds2"

            dataSource="jdbc/ch12"

          />

          更新記錄值1<hr>

          <sql:update var="update1" dataSource="${ds2}">

              update sql_test set power='low' where id=01

          </sql:update>

          2種更新:創(chuàng)建表<hr>

          <sql:update var="update4" sql="create table sql_temp_901(test varchar(20))" dataSource="${ds2}"/>  

          3種更新:增加記錄

          <sql:update var="update5" sql="insert into sql_temp_901 values('hellking')" dataSource="${ds2}"/>

          4種更新:刪除記錄<hr>

          <sql:update var="update6" sql="delete from sql_temp_901 where test='hellking'" dataSource="${ds2}"/>  

          5種更新:刪除表<hr>

          <sql:update var="update7" sql="drop table sql_temp_901" dataSource="${ds2}"/>

          </body>

          </html>

           

          <sql:transaction>

          作用:用語事務(wù)處理,它為<sql:query><sql:update>建立事務(wù)處理上下文,并且提供相同的數(shù)據(jù)源。

          語法:<sql:transation [dataSource=”dataSourceName”]>

                [isolation=”isolationLevel”]>

                <sql:query> and <sql:update> statement

                </sql:transation>

                isolationLevel ::=”read_committed”

                |”read_uncommitted”

                |”repeatable_read”

                |”serializable”

          注意:DataSource屬性和其他標簽的DataSource屬性一樣,isolactionlevel屬性指定事務(wù)隔離的級別,如果沒有指定它的值,那么就使用自己配置的DataSource事務(wù)隔離級別。而且,嵌套在里面的<sql:query> <sql:update>標簽不能再指定其他的數(shù)據(jù)源。<sql:transaction>

          是數(shù)據(jù)庫封裝的輕量級事務(wù)處理,如果你需要復(fù)雜的事務(wù)處理或者分布試處理,它就不適合。

          舉例:sql_transaction.jsp

          <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

          <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>

          <%@ page contentType="text/html; charset=gb2312" language="java" %>

          <html>

          <head>

            <title>JSTL:sql:transaction的使用</title>

          </head>

          <sql:setDataSource

            var="ds2"

            dataSource="jdbc/ch12"

          />

          <h2>使用事務(wù)處理方式創(chuàng)建一個表:</h2>

           

          <sql:transaction dataSource="${ds2}">

            <sql:update var="test_temp902">

              create table test_temp902 (

                id int primary key,

                name varchar(80)

              )

            </sql:update>

            <sql:update sql="insert into test_temp902 values(01,'wyy')"/>

            <sql:update sql="update sql_test set power='wyy' where id=01"/>

          </sql:transaction>

          </body>

          </html>

           

          <sql:param>

          作用:設(shè)置sql語句中“?”表示的占位符號的值。

          語法:a、沒有body,使用value指定。

                   <sql:param value=”value”/>

                b、在body中指定

                   <sql:param>

                   參數(shù)值

                   </sql:param>

          舉例:sql_param.jsp

          <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

          <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>

          <%@ page contentType="text/html; charset=gb2312" language="java" %>

          <html>

          <head>

            <title>JSTL:sql:param的使用</title>

          </head>

          <sql:setDataSource

            var="example"

            dataSource="jdbc/ch12"

          />

           

          執(zhí)行更新操作:<hr>

          <sql:update var="update2" sql="update sql_test set power=? where id=?" dataSource="${example}">

             <sql:param value="high"/>

             <sql:param value="01"/>

          </sql:update>

          </body>

          </html>


          posted on 2007-06-13 10:36 chenguo 閱讀(446) 評論(3)  編輯  收藏 所屬分類: 組件 標簽使用

          評論

          # re: JSTL詳解(七) 2007-12-12 17:12 E

          3Q  回復(fù)  更多評論   

          # re: JSTL詳解(七) 2009-05-02 23:13 龍華城

          為什么你博客里的jstl詳解從(三)開始呢, (一)跟(二)呢?  回復(fù)  更多評論   

          # re: JSTL詳解(七) 2009-05-02 23:41 龍華城

          找到一和三了, 不錯的文章.  回復(fù)  更多評論   

          <2009年5月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導(dǎo)航

          統(tǒng)計

          留言簿

          隨筆分類(1)

          文章分類(52)

          好友 小山的博客

          最新隨筆

          最新評論

          主站蜘蛛池模板: 淳安县| 菏泽市| 图们市| 河曲县| 环江| 浏阳市| 紫云| 中宁县| 浪卡子县| 香港| 靖远县| 墨脱县| 宁德市| 舞阳县| 合川市| 玛多县| 曲麻莱县| 临朐县| 图木舒克市| 保亭| 漯河市| 丹寨县| 东山县| 建水县| 开原市| 乐昌市| 平利县| 林西县| 通山县| 平定县| 龙井市| 南汇区| 保靖县| 巴塘县| 定西市| 荆门市| 滨海县| 额济纳旗| 越西县| 庆云县| 宁武县|