jsp mysql 删除 变更_JSP MySQL 简单的增删改查

简单对MySQL 操作

先上个动图了解一下本章的意图。

ad856e2dd033

jsp_mysql.gif

首先创建一个jsp项目 MySQLDBDemo

准备两个jar包

数据库jar包

mysql-connector-java-5.0.8-bin.jar (自行网上下载)

servlet-api.jar (从tomcat lib内获取)

WebContent

-- Web-INT

-- lib (放于这个文件夹内)

构建index.jsp 页面

pageEncoding="utf-8"%>

MySQL Action

.action {

width: 500px;

height: 200px;

margin: 0 auto;

background: rgba(234, 233, 233, 0.22);

margin-top: 50px;

}

.result {

width: 500px;

height: 100px;

margin: 0 auto;

background: rgba(189, 187, 104, 0.22);

margin-top: 50px;

}

.action li {

list-style: none;

padding-top: 20px;

}

JSP MySQL 简单的增删改查
Result:
${message}
${studentid}
${quiz}
${exam}

这一部分表示,点击链接触发servlet 执行相关的操作

JSP MySQL 简单的增删改查

这一部分用于servlet传递的参数,显示 操作结果

Result:
${message}
${studentid}
${quiz}
${exam}

index.jsp 页面 非常简单。

ad856e2dd033

index.jsp.png

建立一个简单的数据库链接类 MyDBUtil.java

方便servlet 去链接数据库

package cn.crabshell.utils;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class MyDBUtil {

/**

* @param args

*/

// 驱动程序就是之前在classpath中配置的JDBC的驱动程序的JAR 包中

public static final String DBDRIVER = "com.mysql.jdbc.Driver";

// 连接地址是由各个数据库生产商单独提供的,所以需要单独记住

public static final String DBURL = "jdbc:mysql://localhost:3306/student";

// 连接数据库的用户名

public static final String DBUSER = "root";

// 连接数据库的密码

public static final String DBPASS = "";

static Connection conn;

/**

* Connect to DB

*

* @return Connection

* @throws SQLException

*/

public static Connection connetDB(){

// 1、使用CLASS 类加载驱动程序

try {

Class.forName(DBDRIVER);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

try {

conn = DriverManager.getConnection(DBURL, DBUSER, DBPASS);

} catch (SQLException e) {

//e.printStackTrace();

return null;

}

return conn;

}

/**

* close DB

*/

public static void closeDB() {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

说明:

public static final String DBURL = "jdbc:mysql://localhost:3306/student";

// 连接数据库的用户名

public static final String DBUSER = "root";

// 连接数据库的密码

public static final String DBPASS = "";

student 是在你的mysql内创建的数据库名称。

作者的本地实验数据库账号是 root, 密码是空。

建立数据库 student 后,

可以执行 sql 语句创建 一张表 grade

CREATE TABLE `student`.`grade` ( `id` INT NOT NULL AUTO_INCREMENT ,

`studentid` VARCHAR(11) NOT NULL , `quiz` INT(255) NOT NULL , `exam`

INT(255) NOT NULL , PRIMARY KEY (`id`)) ;

ad856e2dd033

grade_table.png

编码 servlet

创建 InsertServlet.java

在 doGet() 方法内 添加 下面代码

代码 链接了数据库,并向数据库插入一条数据。

插入数据之后,返回一个int值, 0表示失败,1表示插入成功。

将参数传递给index.jsp页面, 显示结果。

String sql = "INSERT INTO grade (studentid,quiz,exam) VALUES(?,?,?)";

PreparedStatement ps = null;

Connection conn = MyDBUtil.connetDB(); // get db connection

int result = 0;

try {

ps = conn.prepareStatement(sql);

ps.setString(1, "b63030007");

ps.setInt(2, 99);

ps.setInt(3, 99);

result = ps.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}finally{

MyDBUtil.closeDB();

}

String message = null;

if(result == 0){

message = "INSERT FAIL";

}else{

message = "INSERT SUCCESS";

}

request.setAttribute("message", message);

RequestDispatcher rd = request.getRequestDispatcher("index.jsp");

rd.forward(request, response);

创建 SelectServlet.java

在 doGet() 方法内 添加 下面代码

代码 链接了数据库,并向数据库查询数据。

如果结果集有数据,就给 studentid,quiz,exam赋值。

将参数传递给index.jsp页面, 显示结果。

Connection conn = MyDBUtil.connetDB(); // get db connection;

PreparedStatement ps = null;

ResultSet rs = null;

String studentid = null;

String quiz = null;

String exam = null;

String sql = "select * from grade where studentid = ? limit 1";

try {

ps = conn.prepareStatement(sql);

ps.setString(1, "b63030007");

rs = ps.executeQuery();

while (rs.next()) {

studentid = rs.getString("studentid");

quiz = rs.getString("quiz");

exam = rs.getString("exam");

}

} catch (SQLException e) {

e.printStackTrace();

}

String message = null;

if(studentid == null){

message = "Select FAIL";

}else{

message = "Select SUCCESS";

request.setAttribute("studentid", studentid);

request.setAttribute("quiz", quiz);

request.setAttribute("exam", exam);

}

request.setAttribute("message", message);

RequestDispatcher rd = request.getRequestDispatcher("index.jsp");

rd.forward(request, response);

创建 UpdateServlet.java

在 doGet() 方法内 添加 下面代码

代码 链接了数据库,并向数据库更新数据。

给指定 studentid 更改 quiz 和 exam的值。

更新数据之后,返回一个int值, 0表示失败,1表示插入成功。

将参数传递给index.jsp页面, 显示结果。

String sql = "UPDATE grade SET quiz=?,exam=? WHERE studentid=?";

PreparedStatement ps = null;

Connection conn = MyDBUtil.connetDB(); // get db connection

int result = 0;

try {

ps = conn.prepareStatement(sql);

ps.setInt(1, 100);

ps.setInt(2, 100);

ps.setString(3, "b63030007");

result = ps.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}finally{

MyDBUtil.closeDB();

}

String message = null;

if(result == 0){

message = "UPDATE FAIL";

}else{

message = "UPDATE SUCCESS";

}

request.setAttribute("message", message);

RequestDispatcher rd = request.getRequestDispatcher("index.jsp");

rd.forward(request, response);

创建 DeleteServlet.java

在 doGet() 方法内 添加 下面代码

代码 链接了数据库,并向给指定 studentid 删除数据。

删除数据之后,返回一个int值, 0表示失败,1表示插入成功。

将参数传递给index.jsp页面, 显示结果。

String sql = "DELETE FROM grade WHERE studentid = ?";

PreparedStatement ps = null;

Connection conn = MyDBUtil.connetDB(); // get db connection

int result = 0;

try {

ps = conn.prepareStatement(sql);

ps.setString(1, "b63030007");

result = ps.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

}finally{

MyDBUtil.closeDB();

}

String message = null;

if(result == 0){

message = "DELETE FAIL";

}else{

message = "DELETE SUCCESS";

}

request.setAttribute("message", message);

RequestDispatcher rd = request.getRequestDispatcher("index.jsp");

rd.forward(request, response);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值