Spring MVC中页面跳转(forward or redirect)

简介: 一 处理方法返回值设置为String类,一切麻烦都没有了: @RequestMapping("/dologin") public String dologin(HttpServletRequest request, User user) { return "panel/bingo"; } 原因很简单,你返回一个String,一个字符串,这个字符串代表View的名字。

一 处理方法返回值设置为String类,一切麻烦都没有了:

    @RequestMapping("/dologin")
    public String dologin(HttpServletRequest request, User user) {

      return "panel/bingo";
}

原因很简单,你返回一个String,一个字符串,这个字符串代表View的名字。你的返回值由谁来处理?答:由ViewResolver。
你告诉ViewResolver一个名字,这个名字是一个字符串。ViewResolver会依据这个名字,去WEB-INF中找到对应的jsp页面。靠,这么聪明?傻逼,你之前配置过的啊:
screenshot

二 处理方法返回值设置为ModelAndView类:

    @RequestMapping("/dologin")
    public ModelAndView dologin(HttpServletRequest request, User user) {    
        User us1 = uss.getUserByName(user.getSrName());
        ModelAndView mav = new ModelAndView();
        mav.setViewName("login/login");
        if (us1 == null) {
            mav.addObject("errorMsg", "用户名不存在");
        } else if (!us1.getSrPwd().equals(user.getSrPwd())) {
            mav.addObject("errorMsg", "用户密码不正确");
        } else {
            mav.setViewName("public");
        } 
        return mav;
    }

上面使用ModelAndView对象作为返回值,最好使用setViewName()方法设置一下View的名字。这个viewname的解析过程和1中一样。

三 forward和redirect关键词
forward和redirect只能定位到WEB-INF目录之外的jsp文件
ModelAndView对象被解析,可以定位到WEB-INF目录中的jsp文件。

目录
相关文章
|
29天前
|
缓存 前端开发 Java
Spring MVC 面试题及答案整理,最新面试题
Spring MVC 面试题及答案整理,最新面试题
85 0
|
28天前
|
SQL JavaScript Java
springboot+springm vc+mybatis实现增删改查案例!
springboot+springm vc+mybatis实现增删改查案例!
23 0
|
28天前
|
SQL Java 数据库连接
挺详细的spring+springmvc+mybatis配置整合|含源代码
挺详细的spring+springmvc+mybatis配置整合|含源代码
35 1
|
6天前
|
数据采集 前端开发 Java
数据塑造:Spring MVC中@ModelAttribute的高级数据预处理技巧
数据塑造:Spring MVC中@ModelAttribute的高级数据预处理技巧
19 3
|
6天前
|
存储 前端开发 Java
会话锦囊:揭示Spring MVC如何巧妙使用@SessionAttributes
会话锦囊:揭示Spring MVC如何巧妙使用@SessionAttributes
12 1
|
6天前
|
前端开发 Java Spring
数据之桥:深入Spring MVC中传递数据给视图的实用指南
数据之桥:深入Spring MVC中传递数据给视图的实用指南
20 3
|
16天前
|
前端开发 安全 Java
使用Java Web框架:Spring MVC的全面指南
【4月更文挑战第3天】Spring MVC是Spring框架的一部分,用于构建高效、模块化的Web应用。它基于MVC模式,支持多种视图技术。核心概念包括DispatcherServlet(前端控制器)、HandlerMapping(请求映射)、Controller(处理请求)、ViewResolver(视图解析)和ModelAndView(模型和视图容器)。开发流程涉及配置DispatcherServlet、定义Controller、创建View、处理数据、绑定模型和异常处理。
使用Java Web框架:Spring MVC的全面指南
|
22天前
|
敏捷开发 监控 前端开发
Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构
Spring+SpringMVC+Mybatis的分布式敏捷开发系统架构
53 0
|
21天前
|
Java 应用服务中间件 Maven
SpringBoot 项目瘦身指南
SpringBoot 项目瘦身指南
38 0
|
2月前
|
缓存 Java Maven
Spring Boot自动配置原理
Spring Boot自动配置原理
48 0