Spring Mvc 有如下的几种返回方式:
ModelAndView,
Model,
ModelMap,
Map,
View,
String,
void
例子在类开始之前加上了如下注解:
@Controller
@RequestMapping("/adController")
一:ModelAndView
@RequestMapping("/show") public ModelAndView show(){ ModelAndView mav = new ModelAndView(); mav.setViewName("/admin/show"); mav.addObject("aaa", "11111"); return mav; }
请求路径:项目路径/adController/show.do
返回视图:项目路径/admin/show.jsp
通过ModelAndView构造方法可以指定返回的页面名称,也可以通过setViewName()方法跳转到指定页面,使用addObject()设置需要返回的值。
在页面上可以通过El表达式${aaa}获取!
二:MAP
@RequestMapping("/show2") public Map<String,String> getMap(){ System.out.println("show2"); Map<String,String> map = new HashMap<String, String>(); map.put("key1", "111"); map.put("key2", "222"); return map; }
请求路径:项目路径/adController/show2.do
返回视图:项目路径/adController/show2.jsp
URL = prefix前缀+视图名称+suffix后缀组成。
在前台页面也可以根据${key1}来获取相应的值。
三:String
@RequestMapping("/show3") public String getString(ModelMap model) { model.addAttribute("aaa", "1111"); model.addAttribute("bbb","222"); return "center"; }
请求路径:项目路径/adController/show3.do
返回路径:项目路径/center.jsp
URL = prefix前缀+/return的值+suffix组成
可以通过ModelMap构建返回的参数,该ModelMap不需要自己创建。
如果加上了@ResponseBody注解,则会直接将输出值返回输出到页面。
页面会直接显示 “center”
四:Void
@RequestMapping("/show4") public void getVoid() { }
请求路径:项目路径/adController/show3.do
返回路径:对于请求路径 后缀为 .jsp
同样也可以构造ModelMap返回参数
小结:
1、使用String作为请求处理方法的返回类型是比较通用的方法,这样返回的逻辑视图名不会和请求的URL绑定,具有很大的灵活性,而模型数据也可以根据ModelMap构造控制。
2、使用Void,Map 返回对应的逻辑视图名称真实url为:prefix前缀+视图名称 +suffix后缀组成。
相关推荐
Spring MVC是Spring框架的一个核心模块,专为构建Web应用程序提供模型-视图-控制器(MVC)架构。在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring ...
拦截器(Interceptor)是Spring MVC中的一种机制,可以在请求处理前、后执行自定义逻辑。通过实现HandlerInterceptor接口或使用@Interceptor注解,开发者可以添加全局的行为,如日志记录、权限检查等。 此外,...
五、Spring MVC双亲上下文的说明:在Spring MVC中,可以通过双亲上下文机制来共享Spring IoC容器中的Bean。这样,Spring MVC和Spring的应用程序上下文可以共享配置信息。 六、Spring MVC mvc.xml配置文件片段讲解:...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。Spring MVC的设计目标是提供一个清晰的组件化架构,使得开发者可以独立地开发和测试控制器、...
### Spring MVC 教程知识点详解 #### Spring Web MVC 框架简介 Spring Web MVC 是 Spring Framework 的一个重要组成部分,主要用于构建基于 Java 的 Web 应用程序。它提供了一个灵活且强大的 MVC 实现,使得开发者...
11. **Validation**:Spring提供了数据验证机制,可以通过`@Valid`注解和Validator接口实现对表单数据的校验。 12. **Interceptor**:拦截器,允许在请求处理前后执行自定义逻辑,如日志记录、权限检查等。 13. **...
Spring MVC支持自动将HTTP请求参数绑定到处理方法的参数上,同时提供了数据验证机制,确保输入数据的合法性。 **5. 文件上传与下载** Spring MVC提供了方便的文件上传和下载功能,开发者可以通过简单的API来实现...
8. **数据验证**: 通过集成JSR-303/JSR-349(Bean Validation)规范,Spring MVC提供了一种方便的数据验证机制。可以使用`@Valid`注解进行验证,并通过`BindingResult`对象获取验证结果。 9. **拦截器(Interceptor...
Spring MVC提供了一种优雅的异常处理机制,可以使用@ControllerAdvice和@ExceptionHandler注解定义全局异常处理器。此外,还可以自定义错误页面,提高用户体验。 8. **数据绑定和验证** Spring MVC支持自动的数据...
10. **异常处理**:Spring MVC 提供了统一的异常处理机制,通过 @ExceptionHandler 或配置 ExceptionResolver,可以优雅地处理应用中的异常。 11. **RESTful 支持**:Spring MVC 通过 @RequestMapping 注解支持 ...
4. **表单验证**:Spring MVC提供了一套表单验证机制,结合jQuery可以实现客户端的实时验证,提高用户体验。例如,使用jQuery的`validate()`插件可以对表单输入进行验证,同时Spring MVC服务器端可以进行二次验证。 ...
通过深入研究源码,我们可以更好地理解Spring MVC的运行机制,如何配置和使用其特性,以及如何优化和调试Spring MVC应用。对于开发人员来说,掌握Spring MVC的源码分析有助于提升Web应用开发的效率和质量。
### Spring MVC框架简介 Spring MVC 是一款基于 Java 的 Web 应用框架,它遵循 MVC(Model-View-Controller)设计模式。Spring MVC 提供了一种结构化的开发方式,旨在简化 Web 层的开发过程,同时提供了高度灵活性...
为了统一处理异常,Spring MVC 提供了全局异常处理机制。可以通过定义 `ExceptionHandler` 方法或使用 `@ControllerAdvice` 注解的类来实现全局异常处理。 #### 十二、记录全局异常到日志 在 Spring MVC 中,可以...
至于"源码"标签,了解Spring MVC的内部机制是非常有益的。通过阅读源码,我们可以深入理解其请求处理流程、调度机制以及如何与视图层交互。这有助于我们优化性能,解决遇到的问题,甚至开发自定义组件。 至于"工具...
同时,Spring MVC还提供了异常处理机制,可以自定义错误页面或者通过@ControllerAdvice全局处理异常。 视图技术方面,Spring MVC与各种视图技术如JSP、FreeMarker、Thymeleaf等良好集成。通过视图解析器,可以方便...
Spring MVC 是一种基于模型-视图-控制器(MVC)设计模式的轻量级Java Web开发框架,由Spring框架提供。在上述描述中,我们看到一个开发者为了应对一个紧迫的项目,快速学习并理解了Spring MVC的核心概念。Spring MVC...
7. **安全控制**:使用Spring Security扩展登录功能,添加认证和授权机制。配置Security的XML或Java配置,定义安全规则,比如哪些URL需要用户登录后才能访问。 8. **测试**:编写单元测试和集成测试,确保每个组件...