servlet连接数据库,实现删除功能
配置数据库
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///test
jdbc.user=root
jdbc.pwd=123456
创建实体类
/**
*
*/
package entity;
/**
* @author xiao
*
*/
public class User {
private String uname;
private int uid;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public int getUid() {
return uid;
}
public void setUid(int uid) {
this.uid = uid;
}
@Override
public String toString() {
return "User [uname=" + uname + ", uid=" + uid + "]";
}
}
连接数据库
package utils;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Properties;
import javax.sql.DataSource;
public class JdbcUtils {
public static final DataSource getConnection = null;
private static String driverClass;
private static String url;
private static String user;
private static String pwd;
static {
//获取类加载器,目的读取配置文件
InputStream is = JdbcUtils.class.getClassLoader().getResourceAsStream("jdbc.properties");
//使用Properties类
Properties prop = new Properties();
try {
prop.load(is);
driverClass = prop.getProperty("jdbc.driver");
url = prop.getProperty("jdbc.url");
user = prop.getProperty("jdbc.user");
pwd = prop.getProperty("jdbc.pwd");
} catch (IOException e) {
e.printStackTrace();
}
//加载驱动
try {
Class.forName(driverClass);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static Connection getConnection() {
Connection conn = null;
try {
conn = DriverManager.getConnection(url,user,pwd);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
public static void release(Connection conn, PreparedStatement ps, ResultSet rs) {
try {
if(rs != null) {
rs.close();
}
if(ps != null) {
ps.close();
}
if(conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
service方法区,这里注意,删除的时候,可以根据id或者name ,只要是唯一即可
package dao;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import utils.JdbcUtils;
/**
* Servlet implementation class DelDao
*/
@WebServlet("/DelDao")
public class DelDao extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//String uname = request.getParameter("uname");
String uid = request.getParameter("uid");
// String pwd = request.getParameter("pwd");
String op=request.getParameter("op");
if ("delete".equals(op)) {
regist(request,response);
}
}
public void regist(HttpServletRequest request, HttpServletResponse response) {
String uid = request.getParameter("uid");
System.out.println(uid);
//操作数据库
Connection conn=null;
PreparedStatement ps=null;
int s=0;
try {
conn=JdbcUtils.getConnection();
String sql="delete from user where uid=?";
ps=conn.prepareStatement(sql);
ps.setString(1, uid);
s=ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}finally {
JdbcUtils.release(conn, ps, null);
}
if(s>0) {
System.out.println("删除成功");
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>删除页面</title>
</head>
<body>
<h1>删除操作</h1>
<form action="DelDao" method="post">
<input type="hidden" name="op" value="delete">
id:<input type="text" name="uid"><br/>
<input type="submit" value="确认删除"><br/>
</form>
</body>
</html>