SpringMVC学习笔记--下篇
发布人:shili8
发布时间:2025-01-24 21:55
阅读次数:0
**Spring MVC 学习笔记 -- 下篇**
在上一篇笔记中,我们已经了解了 Spring MVC 的基本概念、配置以及 Controller 的使用。今天我们将继续深入探讨 Spring MVC 的其他重要方面,包括 View、Model、Request 和 Response 等。
###1. 视图(View)
视图是指用于显示数据的组件。在 Spring MVC 中,我们可以使用各种类型的视图来展示数据,如 JSP、Velocity、FreeMarker 等。下面是一个简单的例子:
java// Controller@RequestMapping("/hello") public String hello(Model model) { model.addAttribute("name", "张三"); return "hello"; // 视图名称} // hello.jsp(视图) <h1>Hello, ${name}!</h1>
在上面的例子中,我们使用了 Model 来传递数据到视图中。Model 是一个用于存储和传递数据的对象。
###2. 模型(Model)
模型是指用于存储和传递数据的组件。在 Spring MVC 中,我们可以使用各种类型的模型来传递数据,如 Map、Bean 等。下面是一个简单的例子:
java// Controller@RequestMapping("/hello") public String hello(Model model) { model.addAttribute("name", "张三"); return "hello"; // 视图名称} // ModelAndView(视图和模型) ModelAndView modelAndView = new ModelAndView(); modelAndView.addObject("name", "李四"); // 添加模型数据return modelAndView;
在上面的例子中,我们使用了 ModelAndView 来传递数据到视图中。
###3. 请求(Request)
请求是指客户端向服务器发送的数据。在 Spring MVC 中,我们可以使用各种类型的请求来获取数据,如 HttpServletRequest 等。下面是一个简单的例子:
java// Controller@RequestMapping("/hello") public String hello(HttpServletRequest request) { String name = request.getParameter("name"); return "hello"; // 视图名称}
在上面的例子中,我们使用了 HttpServletRequest 来获取请求参数。
###4. 响应(Response)
响应是指服务器向客户端发送的数据。在 Spring MVC 中,我们可以使用各种类型的响应来返回数据,如 HttpServletResponse 等。下面是一个简单的例子:
java// Controller@RequestMapping("/hello") public String hello(HttpServletResponse response) { PrintWriter writer = response.getWriter(); writer.println("Hello, 张三!"); return "hello"; // 视图名称}
在上面的例子中,我们使用了 HttpServletResponse 来返回响应数据。
###5. 异常处理异常处理是指在 Spring MVC 中捕捉和处理异常的过程。在 Spring MVC 中,我们可以使用各种类型的异常来捕捉和处理异常,如 RuntimeException 等。下面是一个简单的例子:
java// Controller@RequestMapping("/hello") public String hello() { try { //代码片段 } catch (Exception e) { return "error"; // 视图名称 } }
在上面的例子中,我们使用了 try-catch 来捕捉异常。
###6. 拦截器(Interceptor)
拦截器是指用于拦截和处理请求的组件。在 Spring MVC 中,我们可以使用各种类型的拦截器来拦截和处理请求,如 HandlerInterceptor 等。下面是一个简单的例子:
java// Interceptorpublic class MyInterceptor implements HandlerInterceptor { @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response) throws Exception { //代码片段 return true; } }
在上面的例子中,我们使用了 HandlerInterceptor 来拦截和处理请求。
###7. FilterFilter 是指用于过滤和处理请求的组件。在 Spring MVC 中,我们可以使用各种类型的 Filter 来过滤和处理请求,如 ServletFilter 等。下面是一个简单的例子:
java// Filterpublic class MyFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws ServletException { //代码片段 } }
在上面的例子中,我们使用了 Filter 来过滤和处理请求。
### 总结本篇笔记我们继续深入探讨 Spring MVC 的其他重要方面,包括 View、Model、Request 和 Response 等。同时,我们也学习了异常处理、拦截器和 Filter 的使用。在下一篇笔记中,我们将继续学习 Spring MVC 的其他重要方面,如 AOP、Security 等。
### 参考资料* [Spring MVC 文档]( />* [Spring MVC 教程](