<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JSTL詳解(六)

    9.6 ?Database access 標簽庫

    Database access 標簽庫中的標簽用來提供在 JSP 頁面中可以與數據庫進行交互的功能,雖然它的存在對于早期純 JSP 開發的應用以及小型的開發有著意義重大的貢獻,但是對于 MVC 模型來說,它卻是違反規范的。因為與數據庫交互的工作本身就屬于業務邏輯層的工作,所以不應該在 JSP 頁面中出現,而是應該在模型層中進行。

    對于 Database access 標簽庫本書不作重點介紹,只給出幾個簡單示例讓讀者略微了解它們的功能。

    Database access 標簽庫有以下 6 組標簽來進行工作: <sql:setDataSource> <sql:query> <sql:update> <sql:transaction> <sql:setDataSource> <sql:param> <sql:dateParam>

    9.6.1? 用于設置數據源的 <sql:setDataSource> 標簽

    <sql:setDataSource> 標簽用于設置數據源,下面看一個示例:

    <sql:setDataSource

    ???????? var="dataSrc"

    ???????? url="jdbc:postgresql://localhost:5432/myDB"

    ???????? driver="org.postgresql.Driver"

    ???????? user="admin"

    ???????? password="1111"/>

    該示例定義一個數據源并保存在“ dataSrc ”變量內。

    9.6.2? 用于查詢的 <sql:query> 標簽

    <sql:query> 標簽用于查詢數據庫,它標簽體內可以是一句查詢 SQL 。下面看一個示例:

    <sql:query var="queryResults" dataSource="${dataSrc}">

    ????? select * from table1

    </sql:query>

    該示例將返回查詢的結果到變量“ queryResults ”中,保存的結果是 javax.servlet.jsp.jstl.sql.Result 類型的實例。要取得結果集中的數據可以使用 <c:forEach> 循環來進行。下面看一個示例。

    <c:forEach var="row" items="${queryResults.rows}">

    ????? <tr>

    ??? ?????????? <td>${row.userName}</td>

    ?????????????????? <td>${row.passWord}</td>

    ????? </tr>

    </c:forEach>

    rows ”是 javax.servlet.jsp.jstl.sql.Result 實例的變量屬性之一,用來表示數據庫表中的“列”集合,循環時,通過“ ${row.XXX} ”表達式可以取得每一列的數據,“ XXX ”是表中的列名。

    9.6.3? 用于更新的 <sql:update> 標簽

    <sql:update> 標簽用于更新數據庫,它的標簽體內可以是一句更新的 SQL 語句。其使用和 <sql:query> 標簽沒有什么不同。

    9.6.4? 用于事務處理的 <sql:transaction> 標簽

    <sql:transaction> 標簽用于數據庫的事務處理,在該標簽體內可以使用 <sql:update> 標簽和 <sql:query> 標簽,而 <sql:transaction> 標簽的事務管理將作用于它們之上。

    <sql:transaction> 標簽對于事務處理定義了 read_committed read_uncommitted repeatable_read serializable4 個隔離級別。

    9.6.5? 用于事務處理的 <sql:param> <sql:dateParam> 標簽

    這兩個標簽用于向 SQL 語句提供參數,就好像程序中預處理 SQL 的“ ? ”一樣。 <sql:param> 標簽傳遞除 java.util.Date 類型以外的所有相融參數, <sql:dateParam> 標簽則指定必須傳遞 java.util.Date 類型的參數。


    posted on 2007-01-18 15:18 nbt 閱讀(2383) 評論(1)  編輯  收藏 所屬分類: HTML&CSS&JavaScript

    評論

    # re: JSTL詳解(六) 2007-10-25 13:21 xuelei

    www  回復  更多評論   

    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    導航

    統計

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    Java技術網站

    友情鏈接

    國內一些開源網站

    最新隨筆

    搜索

    積分與排名

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久精品国产亚洲av麻| 亚洲一区二区三区免费观看| 国产啪精品视频网免费| 亚洲成色999久久网站| a级毛片毛片免费观看久潮喷| 亚洲人成网亚洲欧洲无码久久| 国产特黄特色的大片观看免费视频| 相泽亚洲一区中文字幕| 在线播放国产不卡免费视频| 亚洲日本一区二区三区| 四虎国产精品免费视| 98精品全国免费观看视频| 国产精品亚洲一区二区三区| 久久久久亚洲AV成人片| 国产成人高清精品免费鸭子| 99视频免费播放| 一级A毛片免费观看久久精品 | 成人免费无码大片A毛片抽搐| 中美日韩在线网免费毛片视频 | 亚洲精品国产日韩无码AV永久免费网| 一级毛片不卡片免费观看| 精品国产亚洲一区二区三区在线观看| 亚洲天堂视频在线观看| 亚洲精品无码久久久| 免费电影在线观看网站| 男的把j放进女人下面视频免费| 久久亚洲中文无码咪咪爱| 久久亚洲精品成人无码网站| 国产精品亚洲视频| 午夜成人免费视频| 91精品成人免费国产片| 成在人线av无码免费高潮水| 国产精品成人亚洲| 亚洲人成网站色在线观看| 亚洲视频2020| 亚洲人成网77777亚洲色| 亚洲精品在线视频| 波多野结衣免费视频观看| 午夜成年女人毛片免费观看| 91精品免费在线观看| 午夜理伦剧场免费|