• 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>
  • 相关阅读:
    在Vue中使用Echart图表库。【全网最简单】
    asp.net core的授权过滤器中获取action上的Attribute
    用node.js给C#写一个数据表的实体类生成工具
    node.js操作MySQL数据库
    基于node.js的爬虫框架 node-crawler简单尝试
    Angular双向绑定简单理解
    使用.Net core3.0 开发斗图小程序后端+斗图小程序
    Django的命令操作,python
    python,函数式编程
    python 推导式的用法
  • 原文地址:https://www.cnblogs.com/CodeMaker/p/JSTL_3.html
Copyright © 2020-2023  润新知