前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring和Spring MVC(二)

Spring和Spring MVC(二)

原创
作者头像
堕落飞鸟
发布2023-04-04 11:47:39
4120
发布2023-04-04 11:47:39
举报
文章被收录于专栏:飞鸟的专栏

Spring MVC框架

Spring MVC框架的优点

  • MVC模式:Spring MVC框架使用MVC模式来组织应用程序的代码,使得应用程序的开发更加模块化和易于维护。
  • 请求处理:Spring MVC框架提供了请求处理的支持,使得应用程序可以更加灵活地处理不同类型的请求。
  • 视图技术:Spring MVC框架支持多种视图技术,包括JSP、Velocity、Freemarker等。

Spring MVC框架的示例代码

以下是一个简单的Spring MVC框架示例代码:

UserController.java

代码语言:javascript
复制
@Controller
@RequestMapping("/user")
public class UserController {
  @Autowired
  private UserService userService;

  @RequestMapping(value = "/addUser", method = RequestMethod.POST)
  public String addUser(User user) {
    userService.addUser(user);
    return "redirect:/user/list";
  }

  @RequestMapping(value = "/updateUser", method = RequestMethod.POST)
  public String updateUser(User user) {
    userService.updateUser(user);
    return "redirect:/user/list";
  }

  @RequestMapping(value = "/deleteUser", method = RequestMethod.GET)
  public String deleteUser(@RequestParam("userId") int userId) {
    userService.deleteUser(userId);
    return "redirect:/user/list";
  }

  @RequestMapping(value = "/getUser", method = RequestMethod.GET)
  public String getUser(@RequestParam("userId") int userId, Model model) {
    User user = userService.getUser(userId);
    model.addAttribute("user", user);
    return "userDetails";
  }

  @RequestMapping(value = "/list", method = RequestMethod.GET)
  public String listUsers(Model model) {
    List<User> userList = userService.getAllUsers();
    model.addAttribute("userList", userList);
    return "userList";
  }
}

userList.jsp

代码语言:javascript
复制
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<html>
<head>
  <title>User List</title>
</head>
<body>
  <h1>User List</h1>
  <table>
    <tr>
      <th>User ID</th>
      <th>User Name</th>
      <th>Action</th>
    </tr>
    <c:forEach items="${userList}" var="user">
      <tr>
        <td>${user.userId}</td>
        <td>${user.userName}</td>
        <td><a href="<c:url value='/user/getUser'/>?userId=${user.userId}">View</a> | <a href="<c:url value='/user/deleteUser'/>?userId=${user.userId}">Delete</a></td>
      </tr>
    </c:forEach>
  </table>
  <br/>
  <a href="<c:url value='/user/addUser'/>">Add User</a>
</body>
</html>

userDetails.jsp

代码语言:javascript
复制
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<html>
<head>
  <title>User Details</title>
</head>
<body>
  <h1>User Details</h1>
  <table>
    <tr>
      <th>User ID</th>
      <td>${user.userId}</td>
    </tr>
    <tr>
      <th>User Name</th>
      <td>${user.userName}</td>
    </tr>
  </table>
  <br/>
  <a href="<c:url value='/user/list'/>">Back to User List</a>
</body>
</html>

在这个示例中,UserController.java 定义了5个请求处理方法来处理用户相关的操作。这些请求处理方法使用 @RequestMapping 注解来指定它们处理的URL。@RequestParam 注解用于将请求参数映射到方法参数。Model 对象用于在请求处理方法和视图之间传递数据。

在视图方面,userList.jspuserDetails.jsp 分别用于显示用户列表和用户详细信息。这些JSP页面使用 JSTLEL 来遍历用户列表并显示用户信息。其中,<c:url> 标签用于生成正确的URL以避免硬编码。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Spring MVC框架
    • Spring MVC框架的优点
      • Spring MVC框架的示例代码
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档