spring mvc 重定向传参
参考链接如下:
http://bbs.csdn.net/topics/391034118?page=1
自己的示例程序:
详细页面提交一个修改动作,修改完成后跳转到检索页面,把检索条件重新赋值给检索页面。
本地页面
<input type="hidden" name="startDate" value="${(requestDto.startDate)!""}">
<input type="hidden" name="endDate" value="${(requestDto.endDate)!""}">
本地controller
private static final String SEARCH_PAGE = "redirect:/list/search.do";
@RequestMapping(value = "/update", method=RequestMethod.POST)
public String update(RequestDto requestDto,ModelMap modelMap,RedirectAttributes attr) {
/*这段代码就不贴出来了*/
setRedirectParam(requestDto, attr);
return SEARCH_PAGE;
} private void setRedirectParam(RequestDto requestDto,RedirectAttributes attr){
attr.addAttribute("startDate", requestDto.getStartDate());
attr.addAttribute("endDate", requestDto.getEndDate());
}
检索页面
<input type="text" name="startDate" value="${(requestDto.startDate)!""}">
<input type="text" name="endDate" value="${(requestDto.endDate)!""}">
检索controller
@RequestMapping("/search")
public String search(RequestDto requestDto,DalPage pagination,ModelMap modelMap) {
}
据参考的帖子,参数传递除了attr.addAttribute();
还有一种方式:attr.addFlashAttribute();使用这个的时候一般用来传递处理结果。
本地页面同上
本地controller
private static final String SEARCH_PAGE = "redirect:/list/search.do";
@RequestMapping(value = "/update", method=RequestMethod.POST)
public String update(RequestDto requestDto,ModelMap modelMap,RedirectAttributes attr) {
/*这段代码就不贴出来了*/
setRedirectParam(requestDto, attr);
return SEARCH_PAGE;
} private void setRedirectParam(RequestDto requestDto,RedirectAttributes attr){
attr.addFlashAttribute("successCode", requestDto.getStartDate());
}
检索页面
<script type="text/javascript">
window.onload=function(){
if(""!="${(successCode)!""}"){
alert("${(successCode)!""}");
}
}
</script>
检索controller可以不用接参数。且可以通过如下形式查看
@RequestMapping("/search")
public String search(HttpServletRequest httpRequest) {
Map<String, ?> map=RequestContextUtils.getInputFlashMap(httpRequest);
}
map里面存放的就是闪存的值。
然后就是混合使用
attr.addAttribute("startDate", requestDto.getStartDate());
attr.addAttribute("endDate", requestDto.getEndDate());
attr.addFlashAttribute("successCode", "3001");
这样做的话,页面那边是取不到闪存的值得,只能取到get提交参数。
spring mvc 重定向传参的更多相关文章
- Spring MVC URL传参
Spring MVC 学习 之 - URL参数传递 在学习 Spring Mvc 过程中,有必要来先了解几个关键参数: @Controller: 在类上注解,则此类将编程一个控制器,在项目启 ...
- spring MVC 尝试传参json(应用部分)
spring 3.1后增加新的注解:@Requestbody,@Responsebody, 暂不论Requestdody, 若想让后端代码直接返回json字符串,可使用@Responsebody, 用 ...
- 解决Spring MVC前台传参中文乱码问题
在web.xml文件中配置字符编码过滤器: <filter> <filter-name>CharacterEncoding</filter-name> <fi ...
- Spring MVC POJO传参方式
有两POJO类 Address.java package com.proc; public class Address { private String province; private Strin ...
- spring mvc controller间跳转 重定向 传参(转)
spring mvc controller间跳转 重定向 传参 url:http://zghbwjl.blog.163.com/blog/static/12033667220137795252845/ ...
- SpringMVC归纳-1(model数据模型与重定向传参技术)
要点: model是一个Map结构的数据模型,能重定向时传递数据(拼接URL),但不安全,主要用于渲染前端页面,配合Thymeleaf填充html里面里设置好的参数. @RequestParam用来获 ...
- Spring MVC上传文件
Spring MVC上传文件 1.Web.xml中加入 <servlet> <servlet-name>springmvc</servlet-name> <s ...
- Spring MVC 上传文件
Spring MVC上传文件需要如下步骤: 1.前台页面,form属性 method设置为post,enctype="multipart/form-data" input的typ ...
- jsp内部传参与重定向传参
1 重定向地址栏会发生改变,因为它会发送两次请求,内部转发,地址栏不会发生改变,因为它只有一个请求2 重定向不能获取上一次请求中的参数,而内部转换可以3 内部转发可以访问WEB-INF下的资源,重定向 ...
随机推荐
- web api同源策略
1.重写JsonMediaTypeFormatter public class JsonpMediaTypeFormatter : JsonMediaTypeFormatter { private s ...
- IDEA调试javaScript
谈起JavaScript调试,大家可能想到的就是FireFox下的FireBug,这毫无疑问,FireBug基本已经成为JavaScript开发人员的必备工具.在本文中,将向大家介绍如 ...
- NOIP2013 提高组day2 2 花匠 动规 找拐点 树状数组
花匠 描述 花匠栋栋种了一排花,每株花都有自己的高度.花儿越长越大,也越来越挤.栋栋决定把这排中的一部分花移走,将剩下的留在原地,使得剩下的花能有空间长大,同时,栋栋希望剩下的花排列得比较别致. 具体 ...
- 各种注释--------html,jsp
1. <!--到梦之都XHTML教程的链接--> <a href="http://www.dreamdu.com/xhtml/"> 学习XHTML < ...
- JS 跨域问题浅析及解决方法优缺点对比(转)
1.所谓 JS 跨域问题,是指在一个域下的页面中通过js访问另一个不同域下 的数据对象, 出于安全性考 虑,几乎所有浏览器都不允许这种跨域访问,这就导致在一些ajax应用中, 使用跨域的web ser ...
- kali linux karmetasploit配置
原理分析:http://www.freebuf.com/articles/77055.html 转官方说明:https://www.offensive-security.com/metasploit- ...
- Ogre1.8地形和天空盒的建立(一块地形)
转自:http://www.cnblogs.com/WindyMax/ 研究Ogre的程序笔记 编译环境 WIN7 32 VS2008 Ogre的版本 1.8 Ogre的地形算法是采用Geome ...
- redis补充和rabbitmq讲解
线程池: redis发布订阅: rabbitMQ: MySQL; python pymysql: python orm SQLAchemy: paramiko: 堡垒机: 1.线程池 1.1 cont ...
- 又见蒙特卡洛——python模拟解决三门问题
三门问题很有意思,wiki用不同方法将原理讲的很透彻了,我跟喜欢其中这种理解方式:无论参赛者开始的选择如何,在被主持人问到是否更换时都选择更换.如果参赛者先选中山羊,换之后百分之百赢:如果参赛者先选中 ...
- MVC中Asp.Net管道(二)
Asp.Net管道: 1.在工作进程w3wp.exe中,利用asp.net_isapi加载.NET运行时,6.0中引入了应用程序池的概念,一个工作进程对应的一个应用程序池.一个应用呢程序池可以加载一个 ...