乐码库:一个极速、放心、纯净的下载站! 更新: 资源发布
  • 您的位置:首页 > 技术文档 > JSP编程 > JSP中操作数据库的常用SQL标签用法总结
  • 收藏本页
      JSP中操作数据库的常用SQL标签用法总结
      发布时间:2016-11-08 07:34:47 关键词: JSP,SQL标签,SQL,数据库
      内容简介:这篇文章主要介绍了JSP中操作数据库的常用SQL标签用法总结,SQL标签封装了数据库访问的通用逻辑,可以简化数据库操作,需要的朋友可以参考下

    <sql:setDataSource>
    标签设定数据源

    语法结构:

        <sql:setDataSource url="jdbcUrl" driver="driverClassName" user="userName" password="password" [var = "varName"][scope="{page | request | session | application}"] />


    <sql:update>
    标签进行增删改的操作

    第一种格式:

    <sql:update sql="sqlUpdate" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"] />

    eg:

    <%@ page contentType="text/html;charset=GBK"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>测试标签</title>
    </head>
    <sql:setDataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
     user="liky" password="redhat"
     url="jdbc:sqlserver://localhost:1433;DatabaseName=csu" var="db" />
    <body>
    <!-- 这里使用update标签创建一个表 -->
    <sql:transaction dataSource="${db}">
    <sql:update var="update" scope="page">
     if exists(select 1 from sysobjects where name='tmp')
     drop table tmp
     
     create table tmp
     (
     id int identity(1,1) primary key,
     name varchar(20),
     pass varchar(20)
     )
    </sql:update>
    </sql:transaction>
    <!-- 这里使用update标签修改表的结构,添加一个列 -->
    <sql:transaction dataSource="${db}">
    <sql:update var="update" scope="page">
     alter table tmp add age tinyint
    </sql:update>
    </sql:transaction>
    <br>
    </body>
    </html>
    
    

    第二种格式是将SQL语句作为本体内容

    <%@page language="java" contentType="text/html;charset=gb2312"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
    <!DOCTYPE html>
    <html>
      <head>
        <title>Update标签添加数据</title>
      </head>
      <body>
        <%-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%>
        <sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver"
            user="root" password="zhangda890126;;"/>
        <%-- 通过update标签添加数据 --%>
        <sql:update>
          INSERT INTO user(userid,username,password) VALUES(null,"admin1","root1");
        </sql:update>
      </body>
    </html>
    



    <sql:query>标签
    用来查询数据库中的数据
    第一种格式:

    <sql:query sql="sqlQuery" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"]maxRows="" startRow="startRow" />

    第二种格式是将SQL语句作为本体内容

    <%@page language="java" contentType="text/html;charset=gb2312"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
    <!DOCTYPE html>
    <html>
      <head>
        <title>Query标签的使用</title>
      </head>
      <body>
        <%-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%>
        <sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver"
            user="root" password="zhangda890126;;"/>
        <%-- 通过update标签添加数据 --%>
        <sql:query var="result">
          SELECT * FROM user
        </sql:query>
        <%-- 显示所有的数据 --%>
        <center>
          <h3>查询所有的数据</h3>
          <table border="1">
            <tr>
              <td>userID</td>
              <td>userName</td>
              <td>password</td>
            </tr>
            <%-- 使用foreach循环输出所有的值 --%>
            <c:forEach items="${result.rows}" var = "row">
              <tr>
                <td>${row.userid}</td>
                <td>${row.username}</td>
                <td>${row.password}</td>
              </tr>
            </c:forEach>
          </table>
        </center>
      </body>
    </html>
    
    


    <sql:param>标签和<sql:dateParam>标签
    <sql:param>有两种格式即:带有本体内容和不带本体内容的

    不带本体内容的格式为

    <sql:param value="value" />
    
    

    带本体内容的格式为

    <sql:param>
    
    本体内容
    
    </sql:param>
    
    

    <sql:dateParam>标签的格式为:

    <sql:dateParam value="value" [type="{timestamp|time|date}"] />
    
    

    如果参数与时间和日期有关的话就使用<sql:dateParam>标签


    <sql:transaction>标签
    提供存取数据库时的一种安全机制(事物处理安全机制)

    格式为:

    <sql:transaction [dataSource="dataSource"] [isolation="read_committed|read_uncomited|repeatabl_read|serializable"]>
    
    <sql:update> or <sql:query>
    
    </sql:transaction>
    
     
    

      最新更新
      热门排行榜