Spring实战14——跨重定向传递数据

本文探讨了SpringMVC中重定向时如何传递数据,包括两种方法:1) 使用URL占位符(限String和数字值),2) 利用Flash属性(支持对象类型)。讲解了转发与重定向的区别,并详细介绍了重定向函数的使用。
摘要由CSDN通过智能技术生成

必备知识:

SpringMVC 中的重定向与转发:

转发:forward:+ url。请求转发类型是不会变的,比如post 请求,那么转发后调用的方法也是post 请求类型。

重定向:redirect:+ url。重定向后是发起一个新的Get 请求,model 中的属性和值以参数形式附加在get 请求的url 上。原来的请求和模型消失。


这里讨论重定向如何带参数的两种方式:

1.通过url 中使用占位符,只限String 和数字值。

2.使用flash 属性,支持对象。原理是重定向前把model 数据保存在session 中,重定向后取出。


1.通过url 中使用占位符,只限String 和数字值。

/**
	 * 	带参数重定向:redirect:重定向时原始的请求结束,然后会发起一个新的GET请求。原请求中的model模型数据也跟随原来的请求一起消失,而转发的model不会消失。
	 *	1.如果model属性值不为null,则在重定向路径中会自动以get的参数添加到重定向的url上
	 * 	2.如果有{},其中占位符的参数是model的属性,则会将不安全字符进行转义。只允许是String和数字值。。
	 * 	3.使用flash属性,可以传对象
	 */
	@RequestMapping(value = "/register1", method = RequestMethod.POST)
	public String processRegistration1(@Valid Student student, BindingResult bindingResult,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值