jsp 连接数据库
本章节假设您已经对jdbc有一定的了解。在开始学习jsp数据库访问前,请确保jdbc环境已经正确配置。
首先,让我们按照下面的步骤来创建一个简单的表并插入几条简单的记录:
创建表
在数据库中创建一个employees表,步骤如下:
步骤1:
打开cmd,然后进入数据库安装目录:
c:>
c:>cd program filesmysqlbin
c:program filesmysqlbin>
步骤2:
c:program filesmysqlbin>mysql -u root -p
enter password: ********
mysql>
步骤3:
用create database语句建立一个新的数据库test:
mysql> create database test
步骤4:
在test数据库中创建employee表:
mysql> use test;
mysql> create table employees
(
id int not null,
age int not null,
first varchar (255),
last varchar (255)
);
query ok, 0 rows affected (0.08 sec)
mysql>
插入数据记录
创建好employee表后,往表中插入几条记录:
mysql> insert into employees values (100, 18, 'zara', 'ali');
query ok, 1 row affected (0.05 sec)
mysql> insert into employees values (101, 25, 'mahnaz', 'fatma');
query ok, 1 row affected (0.00 sec)
mysql> insert into employees values (102, 30, 'zaid', 'khan');
query ok, 1 row affected (0.00 sec)
mysql> insert into employees values (103, 28, 'sumit', 'mittal');
query ok, 1 row affected (0.00 sec)
mysql>
select操作
接下来的这个例子告诉我们如何使用jstl sql标签来运行sql select语句:
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%><%@ 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"%>
<html> <head> <title>select 操作</title> </head> <body> <sql:setdatasource var="snapshot" driver="com.mysql.jdbc.driver" url="jdbc:mysql://localhost/test" user="root" password="pass123"/> <sql:query datasource="${snapshot}" var="result"> select * from employees;</sql:query> <table border="1" width="100%"> <tr> <th>emp id</th> <th>first name</th> <th>last name</th> <th>age</th> </tr> <c:foreach var="row" items="${result.rows}"> <tr> <td><c:out value="${row.id}"/></td> <td><c:out value="${row.first}"/></td> <td><c:out value="${row.last}"/></td> <td><c:out value="${row.age}"/></td> </tr> </c:foreach> </table> </body> </html>
访问这个jsp例子,运行结果如下:
insert操作
这个例子告诉我们如何使用jstl sql标签来运行sql insert语句:
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%><%@ 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"%>
<html> <head> <title>insert 操作</title> </head> <body> <sql:setdatasource var="snapshot" driver="com.mysql.jdbc.driver" url="jdbc:mysql://localhost/test" user="root" password="pass123"/> <sql:update datasource="${snapshot}" var="result"> insert into employees values (104, 2, 'nuha', 'ali');</sql:update> <sql:query datasource="${snapshot}" var="result"> select * from employees;</sql:query> <table border="1" width="100%"> <tr> <th>emp id</th> <th>first name</th> <th>last name</th> <th>age</th> </tr> <c:foreach var="row" items="${result.rows}"> <tr> <td><c:out value="${row.id}"/></td> <td><c:out value="${row.first}"/></td> <td><c:out value="${row.last}"/></td> <td><c:out value="${row.age}"/></td> </tr> </c:foreach> </table> </body> </html>
访问这个jsp例子,运行结果如下:
delete操作
这个例子告诉我们如何使用jstl sql标签来运行sql delete语句:
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%><%@ 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"%>
<html> <head> <title>delete 操作</title> </head> <body> <sql:setdatasource var="snapshot" driver="com.mysql.jdbc.driver" url="jdbc:mysql://localhost/test" user="root" password="pass123"/> <c:set var="empid" value="103"/> <sql:update datasource="${snapshot}" var="count"> delete from employees where id = ?
<sql:param value="${empid}" /> </sql:update> <sql:query datasource="${snapshot}" var="result"> select * from employees;</sql:query> <table border="1" width="100%"> <tr> <th>emp id</th> <th>first name</th> <th>last name</th> <th>age</th> </tr> <c:foreach var="row" items="${result.rows}"> <tr> <td><c:out value="${row.id}"/></td> <td><c:out value="${row.first}"/></td> <td><c:out value="${row.last}"/></td> <td><c:out value="${row.age}"/></td> </tr> </c:foreach> </table> </body> </html>
访问这个jsp例子,运行结果如下:
update操作
这个例子告诉我们如何使用jstl sql标签来运行sql update语句:
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%><%@ 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"%>
<html> <head> <title>update 操作</title> </head> <body> <sql:setdatasource var="snapshot" driver="com.mysql.jdbc.driver" url="jdbc:mysql://localhost/test" user="root" password="pass123"/> <c:set var="empid" value="102"/> <sql:update datasource="${snapshot}" var="count"> update employees set last = 'ali' where id = ?
<sql:param value="${empid}" /> </sql:update> <sql:query datasource="${snapshot}" var="result"> select * from employees;</sql:query> <table border="1" width="100%"> <tr> <th>emp id</th> <th>first name</th> <th>last name</th> <th>age</th> </tr> <c:foreach var="row" items="${result.rows}"> <tr> <td><c:out value="${row.id}"/></td> <td><c:out value="${row.first}"/></td> <td><c:out value="${row.last}"/></td> <td><c:out value="${row.age}"/></td> </tr> </c:foreach> </table> </body> </html>
访问这个jsp例子,运行结果如下:
申明:本教程内容由威凡网编辑整理并提供IT程序员分享学习,如文中有侵权行为,请与站长联系(QQ:254677821)!