javaweb连接mysql使用mvc三层架构进行增删改查
时间: 2023-08-11 13:21:45 浏览: 74
好的,我来回答你的问题。首先,需要明确一下MVC三层架构的概念:
- Model:模型层,主要负责数据的存储和操作。
- View:视图层,主要负责用户界面的展示。
- Controller:控制层,主要负责接收用户的请求,并调用相应的模型层处理数据,并将处理结果返回给视图层展示给用户。
具体实现步骤如下:
1. 数据库连接
使用Java中的JDBC技术连接MySQL数据库。可以使用JDBC的驱动程序来连接MySQL数据库,连接方式可以采用JDBC中的Connection对象。代码示例如下:
```
String url = "jdbc:mysql://localhost:3306/test";
String username = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, username, password);
```
2. 数据库操作
在模型层中封装增删改查的操作,可以使用Java中的PreparedStatement对象来执行SQL语句。代码示例如下:
```
PreparedStatement pstmt = conn.prepareStatement("insert into user(name, age) values (?, ?)");
pstmt.setString(1, "张三");
pstmt.setInt(2, 20);
pstmt.executeUpdate();
```
3. 控制层实现
在控制层中实现接收用户请求,并调用相应的模型层处理数据。可以使用Servlet来实现控制层的功能,代码示例如下:
```
public class UserController extends HttpServlet {
private UserService userService;
public void init() {
userService = new UserService();
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String action = request.getParameter("action");
if ("addUser".equals(action)) {
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
User user = new User(name, age);
userService.addUser(user);
response.sendRedirect("userList.jsp");
} else if ("deleteUser".equals(action)) {
int id = Integer.parseInt(request.getParameter("id"));
userService.deleteUser(id);
response.sendRedirect("userList.jsp");
} else if ("updateUser".equals(action)) {
int id = Integer.parseInt(request.getParameter("id"));
String name = request.getParameter("name");
int age = Integer.parseInt(request.getParameter("age"));
User user = new User(id, name, age);
userService.updateUser(user);
response.sendRedirect("userList.jsp");
}
}
}
```
4. 视图层实现
在视图层中展示用户界面,并将模型层返回的数据展示给用户。可以使用JSP来实现视图层的功能,代码示例如下:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>用户列表</title>
</head>
<body>
<h1>用户列表</h1>
<table>
<tr>
<th>ID</th>
<th>姓名</th>
<th>年龄</th>
</tr>
<c:forEach var="user" items="${users}">
<tr>
<td>${user.id}</td>
<td>${user.name}</td>
<td>${user.age}</td>
</tr>
</c:forEach>
</table>
<a href="addUser.jsp">添加用户</a>
</body>
</html>
```
以上就是基于MVC三层架构实现JavaWeb连接MySQL进行增删改查的代码示例。