`
1260533105
  • 浏览: 15640 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

spring mvc 的跳转 和 重定向

阅读更多
(1)我在后台一个controller跳转到另一个controller,为什么有这种需求呢,是这样的。我有一个列表页面,然后我会进行新增操作,新增在后台完成之后我要跳转到列表页面,不需要传递参数,列表页面默认查询所有的。
        方式一:使用ModelAndView
        return new ModelAndView("redirect:/toList");
        这样可以重定向到toList这个方法
        方式二:返回String
                    return "redirect:/ toList ";
        其它方式:其它方式还有很多,这里不再做介绍了,比如说response等等。这是不带参数的重定向。

    (2)第二种情况,列表页面有查询条件,跳转后我的查询条件不能丢掉,这样就需要带参数的了,带参数可以拼接url

        方式一:自己手动拼接url

                    new ModelAndView("redirect:/toList?param1="+value1+"&param2="+value2);
                    这样有个弊端,就是传中文可能会有乱码问题。

        方式二:用RedirectAttributes,这个是发现的一个比较好用的一个类
                    这里用它的addAttribute方法,这个实际上重定向过去以后你看url,是它自动给你拼了你的url。
                    使用方法:

                     attr.addAttribute("param", value);
                    return "redirect:/namespace/toController";
                    这样在toController这个方法中就可以通过获得参数的方式获得这个参数,再传递到页面。过去的url还是和方式一一样的。

    (3)带参数不拼接url页面也能拿到值(重点是这个)
            一般我估计重定向到都想用这种方式:

            @RequestMapping("/save")
    public String save(@ModelAttribute("form") Bean form,RedirectAttributes attr)
                   throws Exception {


        String code =  service.save(form);
        if(code.equals("000")){
            attr.addFlashAttribute("name", form.getName()); 
            attr.addFlashAttribute("success", "添加成功!");
            return "redirect:/index";
        }else{
            attr.addAttribute("projectName", form.getProjectName()); 
            attr.addAttribute("enviroment", form.getEnviroment()); 
            attr.addFlashAttribute("msg", "添加出错!错误码为:"+rsp.getCode().getCode()+",错误为:"+rsp.getCode().getName());
            return "redirect:/maintenance/toAddConfigCenter";
        }
    }


@RequestMapping("/index")
    

    public String save(@ModelAttribute("form") Bean form,RedirectAttributes attr)
                   throws Exception {
            return "redirect:/main/list";
    }
分享到:
评论

相关推荐

    spring mvc controller间跳转 重定向 传参

    Spring MVC controller 间跳转重定向传参 在 Spring MVC 框架中,controller 间跳转重定向传参是一个非常常见的需求。这里,我们将讨论三种常见的情况:不带参数跳转、带参数拼接 URL 形式跳转、带参数不拼接参数...

    Spring mvc 教程

    - **视图链**:视图链是一种组织多个视图的方法,可以实现页面之间的跳转和重定向。 - **视图重定向**:当一个请求被处理完毕后,可能需要重定向到另一个页面。 - **内容协商解析器 ContentNegotiatingViewResolver*...

    详解spring mvc 请求转发和重定向

    在Spring MVC框架中,请求转发和重定向是两种常见的处理HTTP请求的方式,它们在处理用户请求和导航页面之间有明显的差异。理解这两种方法的工作原理和使用场景对于开发高效的Web应用程序至关重要。 请求转发...

    spring mvc

    - **轻量级且易于理解**:Spring MVC 通过其简单的配置和较少的学习曲线,使得开发者可以快速上手。 - **高性能**:相比于其他框架如 Struts2,Spring MVC 在设计上更加注重性能优化。 - **高度灵活**:Spring MVC ...

    Spring MVC

    Spring Security可以集成到Spring MVC项目中,提供认证和授权功能,保护敏感的用户数据和操作。 总的来说,这个简单的Spring MVC登录案例展示了如何使用注解驱动的方式来处理Web请求,以及如何实现基本的用户登录...

    Spring 3.0 mvc 简单跳转 实例 源码

    通过阅读这些源码,可以更深入地理解Spring MVC的运行机制和页面跳转流程。 总的来说,Spring 3.0 MVC的简单跳转实例展示了如何使用Controller处理请求,通过视图解析器解析返回的视图名,实现页面间的重定向或转发...

    spring mvc 自學筆記

    ### Spring MVC 数据跳转 在 Spring MVC 中,数据跳转主要指的是控制器(Controller)处理完请求后,将数据转发到视图(View)进行展示的过程。这里的“跳转”实际上是指请求处理后的视图重定向或转发。 #### 转发与...

    spring mvc 快速入门深入分析

    Spring MVC 支持两种方式来跳转页面: - **转发**:在控制器方法中返回逻辑视图名。 - **重定向**:在控制器方法中返回“redirect:/url”。 #### 十三、处理Ajax请求 Spring MVC 提供了多种方式来处理Ajax请求,...

    Spring_MVC_4.2.4_RELEASE_中文文档.pdf

    视图链允许一系列视图处理逻辑,而视图重定向则可以实现URL的跳转。 8. **内容协商**: 内容协商是指根据客户端的能力和偏好返回不同的响应内容。`ContentNegotiatingViewResolver`通过多种策略确定最合适的视图。...

    spring security,mybatis,spring mvc 整合权限管理系统

    5. **错误处理和页面跳转**:配置Spring Security的访问拒绝处理和未授权页面,当用户尝试访问无权访问的资源时,系统应返回相应的错误信息或重定向到登录页面。 6. **测试和调试**:编写测试用例,确保权限控制的...

    Spring MVC3复杂表单终极解决办法

    在Spring MVC中,这种复杂性可以通过模型绑定(Model Binding)和数据转换(Data Conversion)机制来简化处理。 1. **模型绑定**: Spring MVC支持基于注解的模型绑定,允许开发者通过`@ModelAttribute`注解将HTTP...

    SpringMVC框架架构介绍

    Spring MVC支持RequestDispatcher的forward()和sendRedirect()方法,分别用于内部请求转发和客户端重定向。 十、处理AJAX请求: Spring MVC可以无缝处理AJAX请求,通过配置和注解来定义JSON或XML的响应格式。 十一...

    Spring mvc结果跳转方法详解

    Spring MVC 结果跳转方法详解 Spring MVC 结果跳转方法是指在 Spring MVC 框架中,如何将请求结果跳转到指定的页面或执行特定的操作。本文将详细介绍 Spring MVC 结果跳转方法的实现方式。 一、使用 ModelAndView ...

    Spring MVC+mybatis实现注册登录功能

    在开发Web应用时,Spring MVC和MyBatis是两个非常重要的框架,它们分别负责控制层和数据访问层的处理。本篇文章将详细讲解如何利用这两个框架实现注册和登录功能。 首先,我们需要创建一个新的项目,并引入相应的...

    Spring MVC 实例

    在这个实例中,我们将深入探讨如何使用Spring MVC、Spring以及JdbcTemplate来实现一个包含注册和登录功能的Web应用。 首先,Spring MVC通过DispatcherServlet作为前端控制器,接收HTTP请求并分发到相应的处理器。在...

    spring_mvc控制网站登录用户失效后跳登录页面

    ### Spring MVC 控制网站登录用户失效后跳转登录页面 #### 概述 在Web应用开发中,确保用户的会话安全至关重要。对于基于Spring MVC框架的应用程序而言,一个常见的需求是当用户会话失效(例如:用户长时间未操作...

    转发和重定向的区别

    在工具选择上,如Spring MVC框架中,可以通过`RedirectAttributes`来方便地实现重定向,并传递附加信息。 总之,转发和重定向都是Web开发中的重要概念,它们各有优缺点,理解其工作原理并合理应用,能够帮助我们...

    Spring MVC— 处理器(Handler)方法的返回值.docx

    总结,Spring MVC处理器方法的返回值多种多样,可以根据需求选择合适的返回类型来控制响应内容、视图跳转或数据绑定。理解并熟练运用这些返回类型是构建高效、灵活的Spring MVC应用程序的关键。

    spring_mvc

    Spring Security是Spring生态中的一个组件,专门用于处理安全性问题,可以集成到Spring MVC中,提供用户认证和授权功能。 7. **MVC流程**:当用户访问登录页面并提交表单时,请求会被Spring MVC的DispatcherServlet...

Global site tag (gtag.js) - Google Analytics