JSTL数据库标签库

在这里插入图片描述
在这里插入图片描述
sql:setDataSource标签用来设置数据库的数据源信息。可以使用
JNDI名来设置,也可以使用DriverManager参数来设置。使用语法为:
1、使用JDBC,建立数据库连接
<sql:setDataSource
dataSource=“dsName” driver=“driver” url=“datasource URL”
user=“user” password=“password”
[var=" varName “] [scope=”{page|request|session|application"}] />
2、使用已经存在的数据库连接
<sql:setDataSource dataSource=“dsName”
[var=“varName” ] [scope="{page|request|session|application"}] />
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

<%-- 
    Document   : jdbc
    Created on : 2020-4-10, 15:41:32
    Author     : X
--%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<sql:setDataSource var="testdb" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost:3306/testtable?useUnicode=true&characterEncoding=utf-8"
     user="root"  password="root"/>
<!--查询-->
<sql:query dataSource="${testdb}" var="rs">
SELECT * from testtable;
</sql:query>
<!--借助核心标签库将数据呈现:-->

<c:set var="11" value="3"/>

<sql:update dataSource="${testdb}" var="count">
  DELETE FROM testtable WHERE Id = ?
  <sql:param value="75" />
</sql:update>

  
  <sql:update dataSource="${testdb}" var="result">
INSERT INTO testtable (id,name,address) VALUES (75, 'cjy', 'china');
</sql:update>

<table>
 <c:forEach var="row" items="${rs.rows}">
  <tr>
   <td><c:out value="${row.id}"/></td>
   <td><c:out value="${row.name}"/></td>
   <td><c:out value="${row.address}"/></td>
  </tr>
 </c:forEach>
</table>


JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能。
JSTL支持通用的、结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签
---------------------------------------------------------------------------------------------

标签:

<sql:setDataSource>	指定数据源
<sql:query>	运行SQL查询语句
<sql:update>	运行SQL更新语句
<sql:param>	将SQL语句中的参数设为指定值
<sql:dateParam>	将SQL语句中的日期参数设为指定的java.util.Date 对象值
<sql:transaction>	在共享数据库连接中提供嵌套的数据库行为元素,将所有语句以一个事务的形式来运行
---------------------------------------------------------------------------------------------
===========================================================================

添加引用:

<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
-------------------------------------------------------------------------------------
连接:
<sql:setDataSource var="db" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf-8"
     user="root"  password="root"/>
-------------------------------------------------------------------------------------

查询:

<sql:query dataSource="${db}" var="rs">
SELECT * from student;
</sql:query>
借助核心标签库将数据呈现:
<table>
<c:forEach var="row" items="${rs.rows}">
<tr>
   <td><c:out value="${row.sno}"/></td>
   <td><c:out value="${row.sname}"/></td>
</tr>
</c:forEach>
</table>
-------------------------------------------------------------------------------------

更新(插入数据):

<sql:update dataSource="${db}" var="result">
INSERT INTO websites (name,url,alexa,country) VALUES ('111', '111, 111, '111');
</sql:update>
-------------------------------------------------------------------------------------

删除数据:

<c:set var="11" value="3"/>

<sql:update dataSource="${db}" var="count">
  DELETE FROM websites WHERE Id = ?
  <sql:param value="${11}" />
</sql:update>
-------------------------------------------------------------------------------------

修改数据:

<c:set var="SiteId" value="3"/>
<sql:update dataSource="${db}" var="count">
  UPDATE websites SET name = 'RUNOOB' WHERE Id = ?
  <sql:param value="${SiteId}" />
</sql:update>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值