mysql jsp简单增删改_JavaWeb (五) Jsp+Servlet+MYSQL实现简单的增删改查

本教程详细介绍了如何利用JavaWeb技术栈(Jsp、Servlet和MYSQL)来实现用户管理的增、删、改、查功能。包括DAO层、实体类、控制器层的代码实现,以及数据库表结构的设计和配置。
摘要由CSDN通过智能技术生成

70d027d28e768bc85338fc6427305144.png

35e8169596bdcc0622932003a9d26930.png

项目结构目录:

6801e44bced538b276c1b4f8c695a605.png

项目环境:

IDEA

JDK 1.8

Tomcat 9

Mysql5.7

MysqlWorkBench 6.3

数据库相关配置如下:

1 create tablet_user2 (3 uid int(10) not nullauto_increment,4 uname varchar(100) not null,5 pwd varchar(100) not null,6 primary key(uid)7 );

5e67d03774fac274f3ac1ba9bc709df3.png

源代码:

负责与数据库交互DAO层

packageweb.dao;importweb.entity.Admin;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.util.ArrayList;importjava.util.List;/***adminDao.java

* 直接和数据库交互*/

public classadminDao {public ListgetAllAdmin(){

List list = new ArrayList<>();

Connection conn=Dbhelper.getConnection();

String sql="select * from t_user";try{

PreparedStatement pst=conn.prepareStatement(sql);

ResultSet rs=pst.executeQuery();while(rs.next())

{

Admin admin= newAdmin();

admin.setUid(rs.getInt("uid"));

admin.setUname(rs.getString("uname"));

admin.setPwd(rs.getString("pwd"));

list.add(admin);

}

rs.close();

pst.close();

}catch(Exception e)

{

e.printStackTrace();

}returnlist;

}public booleanaddAdmin(Admin admin)

{

String sql= "insert into t_user(uid,uname,pwd) values(default ,?,?)";

Connection connection=Dbhelper.getConnection();try{

PreparedStatement pst=connection.prepareStatement(sql);

pst.setString(1,admin.getUname());

pst.setString(2,admin.getPwd());int count =pst.executeUpdate();

pst.close();return count>0?true:false;

}catch(Exception e){

e.printStackTrace();

}return false;

}public booleanupdateAdmin(Admin admin)

{

String sql= "update t_user set uname=?,pwd=? where id=?";

Connection connection=Dbhelper.getConnection();try{

PreparedStatement pst=connection.prepareStatement(sql);

pst.setString(1,admin.getUname());

pst.setString(2,admin.getPwd());

pst.setInt(3,admin.getUid());int count =pst.executeUpdate();

pst.close();return count>0?true:false;

}catch(Exception e)

{

e.printStackTrace();

}return false;

}public boolean deleteAdmin(intuid)

{

String sql= "delete from t_user where uid = ?";

Connection connection=Dbhelper.getConnection();try{

PreparedStatement pst=connection.prepareStatement(sql);

pst.setInt(1,uid);int count = 0;

count=pst.executeUpdate();

pst.close();return count>0?true:false;

}catch(Exception e)

{

e.printStackTrace();

}return false;

}public Admin selectAdminByUid(intuid)

{

Connection connection=Dbhelper.getConnection();

String sql= "select * from t_user where uid = "+uid;

Admin admin=null;try{

PreparedStatement pst=connection.prepareStatement(sql);

ResultSet resultSet=pst.executeQuery();while(resultSet.next())

{

admin= newAdmin();

admin.setUname(resultSet.getString("uname"));

admin.setUid(resultSet.getInt("uid"));

admin.setPwd(resultSet.getString("pwd"));

}

resultSet.close();

pst.close();

}catch(Exception e)

{

e.printStackTrace();

}returnadmin;

}

}

packageweb.dao;importjava.sql.Connection;importjava.sql.DriverManager;/***Dbhelper.java

* 连接数据库*/

public classDbhelper {private static String URL = "jdbc:mysql://localhost:3306/roombase"; //数据库地址

private static String userName = "root";private static String passWord = "zxc2505004";private static String DRIVER = "com.mysql.jdbc.Driver";private static Connection conn = null;publicDbhelper() {

}/*** 获取连接

*@return

*/

public staticConnection getConnection()

{if(null ==conn){try{

Class.forName(DRIVER);

conn=DriverManager.getConnection(URL,userName,passWord);

}catch(Exception e)

{

e.printStackTrace();

}

}returnconn;

}/***测试数据库是否联通

*@paramargs*/

public voidmain(String []args)

{

System.err.println(getConnection());

}

}

ENTITY层:

packageweb.entity;importjava.io.Serializable;public class Admin implementsSerializable {private static final long serialVersinID = 1L;private intuid;privateString uname;privateString pwd;public static longgetSerialVersinID() {returnserialVersinID;

}public intgetUid() {returnuid;

}public void setUid(intuid) {this.uid =uid;

}publicString getUname() {returnuname;

}public voidsetUname(String uname) {this.uname =uname;

}publicString getPwd() {returnpwd;

}public voidsetPwd(String pwd) {this.pwd =pwd;

}

@OverridepublicString toString() {return "Admin{" +

"uid=" + uid +

", uname='" + uname + '\'' +

", pwd='" + pwd + '\'' +

'}';

}

}

Controller层:

packageweb.web.servlet;importweb.dao.adminDao;importweb.entity.Admin;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;/*** 请求控制层

*AddServlet.java*/

public class AddServlet extendsHttpServlet {private static final long serialVersionUID = 1L;

@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {this.doPost(req,resp);

}

@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {

String uname= req.getParameter("uname");

String pwd= req.getParameter("pwd");

Admin admin= newAdmin();

admin.setUname(new String(uname.getBytes("ISO-8859-1"),"UTF-8"));

admin.setPwd(new String(pwd.getBytes("ISO-8859-1"),"UTF-8"));

adminDao dao= newadminDao();

dao.addAdmin(admin);

req.getRequestDispatcher("ShowServlet").forward(req,resp);//内部重定向

}

}

packageweb.web.servlet;importweb.dao.adminDao;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;/*** deleteServlet.java*/

public class deleteServlet extendsHttpServlet {

@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {this.doPost(req,resp);

}

@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {

String idStr= req.getParameter("uid");if(idStr!=null&&!idStr.equals(""))

{int id =Integer.valueOf(idStr);

adminDao dao= newadminDao();

dao.deleteAdmin(id);

}

req.getRequestDispatcher("ShowServlet").forward(req,resp);

}

}

packageweb.web.servlet;importweb.dao.adminDao;importweb.entity.Admin;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;importjava.util.List;/*** ShowServlet.java*/

public class ShowServlet extendsHttpServlet {private static final long serialVersionUID = 1L;protected void doGet(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {this.doPost(req, resp);

}protected void doPost(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {

adminDao dao= newadminDao();

List list =dao.getAllAdmin();

req.setAttribute("list", list);

req.getRequestDispatcher("index.jsp").forward(req, resp);

}

}

packageweb.web.servlet;importweb.dao.adminDao;importweb.entity.Admin;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjava.io.IOException;/*** UpdateServlet.JAVA*/

public class UpdateServlet extendsHttpServlet {

@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {

String idStr= req.getParameter("uid");if (idStr != null && !idStr.equals("")) {int id =Integer.valueOf(idStr);

adminDao dao= newadminDao();

Admin admin=dao.selectAdminByUid(id);

req.setAttribute("admin", admin);

}

req.getRequestDispatcher("update.jsp").forward(req, resp);

}

@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throwsServletException, IOException {

String uname= req.getParameter("uname");

String pwd= req.getParameter("pwd");

String idStr= req.getParameter("uid");

Admin admin= newAdmin();

admin.setUid(Integer.valueOf(idStr));

admin.setUname(new String(uname.getBytes("ISO-8859-1"),"UTF-8"));

admin.setPwd(new String(pwd.getBytes("ISO-8859-1"),"UTF-8"));

adminDao dao= newadminDao();

dao.updateAdmin(admin);

req.getRequestDispatcher("ShowServlet").forward(req, resp);

}

}

JSP页面:

add.jsp

User: ZHENGZHIQIANG

Date:2019/3/2Time:16:14To changethis template use File | Settings |File Templates.--%>

ADD

Add Administrator

Add Account number
Administrator Password

index.jsp

User: ZHENGZHIQIANG

Date:2019/3/2Time:9:59To changethis template use File | Settings |File Templates.--%>

Show

border: 1px solid pink;

margin:0auto;

td{

width: 150px;

border: 1px solid pink;

text-align: center;

}

NUMBERACCOUNT NUMBERPASSWORDOPERATER
${item.uid}${item.uname}${item.pwd}DELETE-----EDIT
ADD administrator

update.jsp

User: ZHENGZHIQIANG

Date:2019/3/2Time:16:34To changethis template use File | Settings |File Templates.--%>

Edit

Edit administrator info

uid
uname
pwd

XML配置文件:

WebBasic

index.html

index.jsp

AddServlet

web.web.servlet.AddServlet

AddServlet

/AddServlet

DeleteServlet

web.web.servlet.deleteServlet

DeleteServlet

/DeleteServlet

UpdateServlet

web.web.servlet.UpdateServlet

UpdateServlet

/UpdateServlet

ShowServlet

web.web.servlet.ShowServlet

ShowServlet

/ShowServlet

源代码如下:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用Java Web和MySQL数据库实现增删改查的步骤: 1.创建数据库和表 首先,需要在MySQL数据库中创建一个数据库和一个表。例如,创建一个名为“test”的数据库和一个名为“users”的表,其中包含id、name和age三个字段。 2.创建Java Web项目 使用IDE(如Eclipse或IntelliJ IDEA)创建一个Java Web项目,并添加MySQL数据库驱动程序(如mysql-connector-java-5.1.47.jar)到项目的lib文件夹。 3.创建实体类 创建一个名为“User”的Java类,该类包含id、name和age三个属性,并生成getter和setter方法。 4.创建DAO类 创建一个名为“UserDao”的Java类,该类包含对数据库进行增删改查操作的方法。例如,添加一个名为“addUser”的方法,该方法将一个User对象添加到数据库中。 ```java public class UserDao { private Connection conn; public UserDao(Connection conn) { this.conn = conn; } public void addUser(User user) throws SQLException { String sql = "INSERT INTO users (name, age) VALUES (?, ?)"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, user.getName()); pstmt.setInt(2, user.getAge()); pstmt.executeUpdate(); } } ``` 5.创建Servlet类 创建一个名为“UserServlet”的Java类,该类包含处理HTTP请求的方法,并使用UserDao类执行数据库操作。例如,添加一个名为“addUser”的方法,该方法从HTTP请求中获取用户输入的数据,并将其添加到数据库中。 ```java public class UserServlet extends HttpServlet { private UserDao userDao; public void init() { String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "123456"; try { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection(url, user, password); userDao = new UserDao(conn); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name = request.getParameter("name"); int age = Integer.parseInt(request.getParameter("age")); User user = new User(); user.setName(name); user.setAge(age); try { userDao.addUser(user); response.sendRedirect("list.jsp"); } catch (SQLException e) { e.printStackTrace(); } } } ``` 6.创建JSP页面 创建一个名为“list.jsp”的JSP页面,该页面显示从数据库中检索的用户数据。例如,使用UserDao类的“getUserList”方法检索数据库中的所有用户,并在JSP页面中显示它们。 ```java <%@ page contentType="text/html; charset=UTF-8" language="java" %> <%@ page import="java.util.List" %> <%@ page import="javax.servlet.http.*" %> <%@ page import="javax.servlet.*" %> <%@ page import="java.sql.*" %> <%@ page import="User" %> <%@ page import="UserDao" %> <% String url = "jdbc:mysql://localhost:3306/test"; String user = "root"; String password = "123456"; try { Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection(url, user, password); UserDao userDao = new UserDao(conn); List<User> userList = userDao.getUserList(); %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>User List</title> </head> <body> <table> <tr> <th>ID</th> <th>Name</th> <th>Age</th> </tr> <% for (User user : userList) { %> <tr> <td><%= user.getId() %></td> <td><%= user.getName() %></td> <td><%= user.getAge() %></td> </tr> <% } %> </table> </body> </html> <% } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } %> ``` 7.部署和运行 将Java Web项目部署到Tomcat服务器上,并在浏览器中访问“http://localhost:8080/user/add”页面,以添加一个新的用户。然后访问“http://localhost:8080/user/list”页面,以检索并显示所有用户。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值