转码与重定向的区别之于SpringMVC

          使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过程。
与之相反,重定向方式的含义是第一个页面通知浏览器发送一个新的页面请求。
因此转发要比重定向更快,而且跳转到的页面属性值将保留,重定向则不会.
但是也不能任意使用转发,用springMVC举个栗子来讲,当你调用某个controller的save方法时会向数据库中插入数据,之后转发到其他页面,而当这时候你刷新页面将会再次调用这个controller重复插入数据,原因在于转发过程url是不发生变化的,因此这种情况下还是选择重定向好一些。
但有人会问,重定向之后怎么传值呢?springMVC3.1之后可以通过Flash属性传值,举个栗子:

@RequestMapping("/save")
public String save(RedirectAttributes reAttrs){reAttrs.addFlashAttribute("msg", "Add success!");return "redirect:/product_view/";
}

使用 RedirectAttributes 这样在新页面你就可以通过msg获取你想要的值了,例如${ msg }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/553799.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring的ApplicationEvent的使用

Spring的ApplicationEvent的使用 Spring 3.0中提供了很多类似*Aware的类,其中ApplicationContextAware接口可以实现我们在初始化bean的时候给bean注入ApplicationConxt(Spring上下文对象)对象。ApplicationContextAware接口提供了publishEven…

谷歌浏览器地址栏记录怎么删除 Chrome浏览器地址栏记录清除方法

相信那些经常使用谷歌Chrome浏览器的朋友都清楚,这款浏览器软件会在地址栏保存大量的访问记录,其中也包括一些不想保存下来的!那么,谷歌浏览器地址栏记录要怎么删除呢?不清楚具体方法的朋友,还不赶紧收藏学习一下。 方法步骤 在…

使用Java的BlockingQueue实现生产者-消费者

BlockingQueue也是java.util.concurrent下的主要用来控制线程同步的工具。 BlockingQueue有四个具体的实现类,根据不同需求,选择不同的实现类 1、ArrayBlockingQueue:一个由数组支持的有界阻塞队列,规定大小的BlockingQueue,其构造函数必须带一个int参数…

win7系统怎么查看主板信息

win7系统怎么查看主板信息?主板是一台计算机最重要的硬件设备之一,它不仅是所有硬件系统的核心,也是机箱中最大的电路板。今天小编就给大家带来了win7系统查看主板信息的方法,一起来看看win7系统怎么查看主板信息的吧。 win7系统怎么查看主…

Mybatis判断int类型是否为空

症状 : 域名筛选在选择正式,测试的时候没问题,选择终止的时候筛选结果不对分析:正式:1测试:2终止:0不选:null选择终止的时候得到了和不选一样的结果,下图为sql判断语句,以前一直都是这么判断的没有出现过问题 错误所在:通过观察log打印的sql语句发现status0时上述条件是不成立的…

win7电脑蓝屏的解决方法

在我们使用电脑的过程中想必有很多人都会遇到蓝屏现象吧,蓝屏指的是操作系统在无法从一个系统错误中恢复过来时所显示的屏幕图像,导致蓝屏现象的原因有很多,今天我们来看看win7电脑蓝屏的解决方法吧。 win7电脑蓝屏的解决方法 1、今天带来的…

$.extend()和(function($){….})(jQuery)

1. JS中substring与substr的区别 之前在项目中用到substring方法,因为C#中也有字符串的截取方法Substring方法,当时也没有多想就误以为这两种方法的使用时一样的。这样就直接按照在C#中使用Substring的方式,直接在js中用了substring&#…

积米浏览器如何清除浏览数据

相信大家都知道,大多数浏览器都会自动缓存浏览数据,而缓存的数据多了也就会直接影响到网页的浏览速度,所以最好是能够经常或者定期去清除浏览数据。那么,如何清除浏览数据呢?下面,以积米浏览器为例,我们一…

Java文件保存与删除工具类

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream;/*** * author ahomeeye* * 2012-7-26 下午3:50:50 文件操作工具类*/ public class FileUtil {// 保存文件public static void saveFile(String newsRootPath, String filename…

win7在网上邻居上看不到别的电脑如何解决

近期在网上看到很多用户询问说win7纯净版系统在网上邻居上看不到别的电脑是什么情况呢?一般情况下,我们可以通过网上邻居和别的电脑共享文件、图片、视频等等。可是有时候Win7系统在网上邻居上看不到别的电脑,也无法搜索到。有什么办法能解决此故障问题…

循环删除List集合的错误

症状:不是郝柱也能看到灾备分析:调试发现动作中有两个灾备,不过只过滤了其中一个 错误所在:代码如下,这里for循环删除List逻辑出问题了,犯了一个比较基础的错误 : 两个灾备动作索引是相邻的,当我remove掉第一个时紧跟着的动作就会取代它原来的位置,最终导致问题发生 修改方案:解…

win10使用网络共享功能的方法

win10系统有一个网络共享功能,可以实现局域网之间文件和打印机的共享操作,从而有效提高资源共享,实现更高效的办公需求。好多新手用户不知道网络共享功能怎么使用?为此,本文教程来和大家详细说明一些使用方法。 具体方法如下: …

JSON转List

JSON转List在平时的开发中经常遇到,这里介绍两张方法: 1.使用jackson(推荐,支持嵌套复杂结构): ObjectMapper mapper new ObjectMapper(); JavaType javaType mapper.getTypeFactory().constructPara…

双击ie浏览器没反应打不开的解决方法

双击ie浏览器后没反应怎么办?双击ie浏览器打不开怎么解决?ie浏览器是众多网民朋友比较熟悉的网页浏览器之一,但是不少用户经常会遇到双击ie浏览器没反应或者双击ie浏览器打不开的尴尬情况,这个问题要如何解决呢?为此小编特整理下文,以下解…

ajax中return取不到值的问题

症状:机器迁移时判断JS返回取不到值分析 :调试发现data是有值的,而且下断点调试发现这段ajax还没走完,后面的逻辑已经开始走了错误所在:ajax之所以叫ajax它首先是异步的,顺序执行的程序不需要等待ajax跑完才继续执行 修改方案:将默认为true的…

UC浏览器如何调节手机屏幕亮度

uc浏览器是一个非常好用的社交服务软件,用户可以使用手机随时进行线上搜索,这款软件使用超级的方便,用户在线上阅读的时候,有很多功能可以使用,在进行线上阅读的时候,可以对页面的文字,背景&…

linux的nohup命令的用法

在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台: /usr/local/mysql/bin/mysqld_safe –usermysql &。可是有很多程序并不想mysqld一样,这…

谷歌浏览器如何添加信任网址 Chrome浏览器信任网址添加方法分享

和许多国产浏览器产品一样,谷歌旗下的Chrome浏览器中也可以将部分站点设置为信任网址,以便避免权限获取提示的“骚扰”。那么,谷歌浏览器要如何添加信任网址?不清楚具体操作的朋友,可以看看小编分享的Chrome浏览器信任网址添加方…

Websocket判断逻辑Bug

症状:灾备后台失败但前台提示成功分析 :下断点发现此时前端的data.obj为undifined,后台pyhon脚本执行报错了 错误所在:前台判断不应该加上undifined 修改方案:第一次修改如上,判断严谨多了,但是运行是前台报不能对undefined使用length分析 :…

QQ浏览器的历史记录在那 QQ浏览器查看浏览历史的方法

QQ浏览器是不少用户选择安装的一款实用性不错的浏览器,在使用这款浏览器的时候有不少功能注意不到,如QQ浏览器怎么查找历史记录等等,下面小编就带大家查看QQ浏览器的历史记录的步骤,帮助大家找回意外关闭或者未加保存到书签的网站…