ssm框架增删改查页面
时间: 2023-09-20 08:05:01 浏览: 46
SSM框架是指Spring+SpringMVC+MyBatis三大框架的整合,下面提供一个基于SSM框架的增删改查页面示例:
首先,我们需要在SpringMVC的配置文件中添加视图解析器和处理器映射器:
```xml
<!-- 视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/" />
<property name="suffix" value=".jsp" />
</bean>
<!-- 处理器映射器 -->
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!-- 处理器适配器 -->
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
```
然后,我们需要编写一个Controller类来处理页面请求,并且调用Service层来实现增删改查的操作:
```java
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping(value = "/list", method = RequestMethod.GET)
public ModelAndView userList() {
ModelAndView modelAndView = new ModelAndView("userList");
List<User> userList = userService.findAllUsers();
modelAndView.addObject("userList", userList);
return modelAndView;
}
@RequestMapping(value = "/add", method = RequestMethod.GET)
public ModelAndView addUserPage() {
ModelAndView modelAndView = new ModelAndView("addUser");
return modelAndView;
}
@RequestMapping(value = "/add", method = RequestMethod.POST)
public ModelAndView addUser(User user) {
ModelAndView modelAndView = new ModelAndView("redirect:/user/list");
userService.addUser(user);
return modelAndView;
}
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
public ModelAndView deleteUser(@PathVariable("id") int id) {
ModelAndView modelAndView = new ModelAndView("redirect:/user/list");
userService.deleteUser(id);
return modelAndView;
}
@RequestMapping(value = "/update/{id}", method = RequestMethod.GET)
public ModelAndView updateUserPage(@PathVariable("id") int id) {
ModelAndView modelAndView = new ModelAndView("updateUser");
User user = userService.findUserById(id);
modelAndView.addObject("user", user);
return modelAndView;
}
@RequestMapping(value = "/update", method = RequestMethod.POST)
public ModelAndView updateUser(User user) {
ModelAndView modelAndView = new ModelAndView("redirect:/user/list");
userService.updateUser(user);
return modelAndView;
}
}
```
在以上Controller类的代码中,我们提供了五个请求方法:
1. `userList()`:用于展示所有用户信息的页面;
2. `addUserPage()`:用于展示添加用户信息的页面;
3. `addUser(User user)`:用于接收添加用户信息的表单数据;
4. `deleteUser(int id)`:用于删除指定用户信息;
5. `updateUserPage(int id)`:用于展示修改指定用户信息的页面;
6. `updateUser(User user)`:用于接收修改用户信息的表单数据。
最后,我们需要编写相应的JSP页面来展示数据和表单。比如我们可以编写一个userList.jsp页面来展示所有用户信息:
```html
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>User List</title>
</head>
<body>
<h1>User List</h1>
<table>
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Age</th>
<th>Gender</th>
<th>Phone</th>
<th>Email</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<c:forEach items="${userList}" var="user">
<tr>
<td>${user.id}</td>
<td>${user.name}</td>
<td>${user.age}</td>
<td>${user.gender}</td>
<td>${user.phone}</td>
<td>${user.email}</td>
<td>
<a href="<c:url value='/user/update/${user.id}'/>">Edit</a>
<a href="<c:url value='/user/delete/${user.id}'/>">Delete</a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<a href="<c:url value='/user/add'/>">Add User</a>
</body>
</html>
```
在以上JSP页面的代码中,我们使用了JSTL标签库来遍历所有用户信息,并且提供了“Add User”、“Edit”和“Delete”三个超链接来触发相关请求方法。
其他的JSP页面也类似,只需要根据表单数据的不同来进行相应的处理即可。