zoukankan      html  css  js  c++  java
  • JSTL标签库 sql标签

    sql标签库提供了基本的访问关系型数据库的能力,提供查询,插入,更新,删除,以及事物处理等。在JSP页面中使用SQL标签库,使用taglib指令,制定引用的标签库。

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

    SQL标签库有<sql:setDataSource>-------设置数据源

    <sql:query>-------对数据库进行查询

    <sql:param>--------设置SQL语句中标记为问号(?)的参数的值,类似于PreparedStatement的setXXX()方法的作用,作为<sql:update>和<sql:query>的子标签使用

    <sql:dateParam>----------用java.util.Date类型的值设置SQL语句中标记为问号的值(?),作为<sql:update>和<sql:query>的子标签使用

    <sql:update> -----------用于执行insert,update,delete语句,还可以执行SQL DDL语句

    <sql:transaction>---------用于为<sql:query>和<sql:update>子标签建立事务处理上下文

    这 6个标签。

    附上一些实例:

    <sql:setDataSource url="jdbc:mysql://localhost/bookstore"
                        driver="com.mysql.jdbc.Driver"
                        user="root" password="123456"/>
    <sql:query sql="select * from bookinfo" var="books"/>
    <table>
        <c:forEach var="book" items="${books.rows}">
        <tr>
            <td><c:out value="${book.title}"/></td>
            <td><c:out value="${book.author}"/></td>
            <td><c:out value="${book.price}"/></td>
        </tr>
        </c:forEach>
    </table>
    
    <sql:setDataSource url="jdbc:mysql://localhost/bookstore"
                        driver="com.mysql.jdbc.Driver"
                        user="root" password="123456"/>
    <sql:query sql="select * from bookinfo" var="books"/>
    <table>
        <c:forEach var="book" items="${books.rowsByIndex}">
        <tr>
            <td><c:out value="${book[1]}"/></td>
            <td><c:out value="${book[2]}"/></td>
            <td><c:out value="${book[3]}"/></td>
        </tr>
        </c:forEach>
    </table>
    
    <sql:setDataSource url="jdbc:mysql://localhost/bookstore"
                        driver="com.mysql.jdbc.Driver"
                        user="root" password="123456"/>
    <sql:query sql="select * from bookinfo" var="books"/>
    <table border="1">
        <tr>
            <th>${books.columnNames[1]}</th>
            <th>${books.columnNames[2]}</th>
            <th>${books.columnNames[5]}</th>
        </tr>
    </table>
    <table>
    <c:forEach var="book" items="${books.rowsByIndex}">
        <tr>
            <td>${book[1]}</td>
            <td>${book[2]}</td>
            <td>${book[5]}</td>
        </tr>
    </c:forEach>
    </table>
    
    <sql:update>
        insert into bookinfo(id, title, author, bookconcern, publish_date, price, amount)
                     values (?, ?, ?, ?, ?, ?, ?)
        <sql:param>8</sql:param>
        <sql:param>JAVA编程思想</sql:param>
        <sql:param>Bruce</sql:param>
        <sql:param>XXXX</sql:param>
        <sql:param>2005-05-23</sql:param>
        <sql:param>55.00</sql:param>
        <sql:param>20</sql:param>
    </sql:update>
    
    <fmt:parseDate value="2004-06-02" type="date"/>
    <sql:query var="books">
        select * from bookinfo where publish_date > ?
        <sql:dateParam value="${publish_date}" type="date"/>
    </sql:query>
  • 相关阅读:
    双列集合
    单列集合
    Comparable和Comparator的区别
    用友U8 |【固定资产】固定资产生成凭证,点完计提折旧后没有凭证出来
    用友U8 |【应收管理】为什么在应收模块弃审销售发票,弃审不成功?
    用友U8 | 【总账】应收核销明细报错,提示:将截断字符串或二进制数据
    用友U8 | 【网上银行】网上银行模块网银支付后台字段说明
    用友U8 | 【实施导航】引入交易单位档案,提示:账号不能为空!
    用友U8 | 【实施导航】已经创建的人员档案,如何更新维护银行信息
    用友U8 |【合同管理】合同结算单不能失效
  • 原文地址:https://www.cnblogs.com/CodeMaker/p/JSTL_3.html
Copyright © 2011-2022 走看看