JSP中操作数据库的常用SQL标签用法总结

所属分类: 网络编程 / JSP编程 阅读数: 312
收藏 0 赞 0 分享

<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>

 

更多精彩内容其他人还在看

weblogic 8.1下重新编译java类但不用重启服务器的方法

weblogic 8.1下重新编译java类但不用重启服务器的方法
收藏 0 赞 0 分享

JSP下动态INCLUDE与静态INCLUDE的区别分析

这篇文章给大家介绍了JSP下动态INCLUDE与静态INCLUDE的区别分析,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

jsp中文乱码 jsp mysql 乱码的解决方法

当使用JSP页面将中文数据添加到MySql数据库中的时候发现变为乱码,或者从mysql中读取中文的时候出现乱码,这些问题根源都是由于字符编码不一致造成的。本文介绍jsp mysql 乱码的解决方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Jsp页面实现文件上传下载类代码第1/2页

Jsp页面实现文件上传下载类代码
收藏 0 赞 0 分享

下载完成后页面不自动关闭的方法

其实就一句话js代码,window.close()
收藏 0 赞 0 分享

JBuilder2005实现重构

JBuilder2005实现重构
收藏 0 赞 0 分享

CORBA对象生命周期

CORBA对象生命周期
收藏 0 赞 0 分享

基于Java的代理设计模式

基于Java的代理设计模式
收藏 0 赞 0 分享

Java中四种XML解析技术

Java中四种XML解析技术
收藏 0 赞 0 分享

跨平台Java程序

跨平台Java程序
收藏 0 赞 0 分享
查看更多