JSP 标准标签库 JSTL 3

SQL 标签库

              JSTL 标签本身的功能的确很强大,基本上把所有的功能都包含了,但是从标准的MVC设计模式类考虑的话,这种在JSP 页面中直接操作SQL 的开发纯粹属于业余人士。


<Context path="/demo" docBase="E:\webdemo" reloadable="true"> 
			<Manager className="org.apache.catalina.session.PersistentManager">
			debug=0 saveOnRestart="true"
			maxActiveSession="-1" minIdleSwap="-1"
			maxIdleSwap="-1" maxIdleBackup="-1"
			<Store
			className="org.apache.catalina.session.FileStore"
			directory="d:\temp"/>
			</Manager>
			<Resource name="jdbc/mydata"
			auth="Container"
			type="javax.sql.DataSource"
			maxActive="100"
			maxIdle="30"
			maxWait="10000"
			username="root"   
			password="root"
			driverClassName="com.mysql.jdbc.Driver"
			url="jdbc:mysql://localhost:8080/mydata"/>
		</Context>

server.xml




数据库操作标签

数据库的主要操作就是查询、更新及事务处理,所以在JSTL 中分别提高了<sql:query>标签、<sql:update>、<sql:transaction>几个主要的操作标签




        <Context path="/demo" docBase="E:\webdemo" reloadable="true">
        <Manager className="org.apache.catalina.session.PersistentManager" >
            debug=0
            saveOnRestart="true"
            maxActiveSession="-1"
            minIdleSwap="-1"
            maxIdleSwap="-1"
            maxIdleBackup="-1"
            <Store className="org.apache.catalina.session.FileStore" directory="d:\temp" />
        </Manager>
        <Resource name="jdbc/mydata"
            auth="Container"
            type="javax.sql.DataSource"
            maxActive="100"
            maxIdle="30"
            maxWait="10000"
            username="root"   
            password="root"
            driverClassName="com.mysql.jdbc.Driver"
            url="jdbc:mysql://localhost:8080/mydata"/>
        </Context>


<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://www.csdn.net/jst/core"%>
<%@ taglib prefix="sql" uri="http://www.csdn.net/jst/sql"%>
<html>
<head> <title>欢迎光临</title>
</head>
<body>
<sql:setDataSource dataSource="jdbc/mydata" var="gz"/>
<sql:query var="result" dataSource="${gz}">
select deptno,sal,comm,ename,job,mgr,hiredate from emp;
</sql:query>
<h3>
	一共有${result.rowCount }条记录!
</h3>
<table border="1" width="100%">
	<tr>
		<td>雇员编号</td>
		<td>雇员工资</td>
		<td>雇员奖金</td>
		<td>部门名称</td>
		<td>雇员工作</td>
		<td>雇员上司</td>
		<td>雇员日期</td>
	</tr>
	<c:forEach items="result.rows" var="row">
		<tr>
			<td>${row.deptno}</td>
			<td>${row.sal}</td>
			<td>${row.comm}</td>
			<td>${row.ename}</td>
			<td>${row.job}</td>
			<td>${row.mgr}</td>
			<td>${row.hiredate}</td>
		</tr>
	</c:forEach>
</table>

</body>
</html>

对于此种查询,在之前的JDBC 中也可以发现通过ResultSet接口查询回来的内容,可以直接通过下标的形式访问里面的一个查询的操作列

<sql:query var="result" dataSource="${gz}" maxRows="2" startRow="2"/>


<%@ page contentType="text/html" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://www.csdn.net/jst/core"%>
<%@ taglib prefix="sql" uri="http://www.csdn.net/jst/sql"%>
<html>
<head> <title>欢迎光临</title>
</head>
<body>
<sql:setDataSource dataSource="jdbc/mydata" var="gz"/>
<sql:query var="result" dataSource="${gz}">
	insert into emp(deptno,sal,comm,ename,job,mgr,hiredate) values () ;
</sql:query>

</body>
</html>

delete from emp where deptno=?;
















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值