SpringMVC的简单传值
之前学习SpringMVC时感觉他的传值很神奇:简便,快捷,高效。
今天写几个简单的传值与大家分享,希望能对大家有帮助。
一、
从后往前传:
(1)
@Controller
@RequestMapping(value={"/hello"})
public class HelloController {
@RequestMapping(value={"sub"})
public ModelAndView submit(HttpServletRequest request) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
m.addObject("ok", "hello");
m.setViewName("success");
return m;
}
}
把想要传递的东西放在addObject(String,Object)里,值是Object类型,什么都可以放。
setViewName() 是设置跳转到哪个页面 (success.jsp页面)。
在success.jsp 页面里用${requestScope.ok}或${ok}即可取出。是不是非常简便快捷。
还可以以这种方式传:
@Controller
@RequestMapping(value={"/user"})
public class UserController {
@RequestMapping(value={"/get"})
public ModelAndView user(User user) throws Exception {
ModelAndView mv=new ModelAndView();
mv.addObject("ok",user.getUsername()+"--"+user.getPassword());
mv.setViewName("success");
return mv;
}
}
通过一个简单的form表单把username和password的值传入:
<form action="user/get" method="post">
<input type="text" name="username" id="username">
<input type="text" name="password" id="password">
<input type="submit">
</form>
在success.jsp 页面里用${requestScope.ok}或${ok}即可取出。
(2)返回值也可以不是ModelAndView
@RequestMapping(value={"/map"})
public String ok(Map map,Model model,ModelMap modelmap,User user) throws Exception {
map.put("ok1", user);
model.addAttribute("ok2",user);
modelmap.addAttribute("ok3", user);
return "show";
}
二、
从前往后传:
(1)
@RequestMapping(value={"ant/{username}/topic/{topic}"},method={RequestMethod.GET})
public ModelAndView ant(
@PathVariable(value="username") String username,
@PathVariable(value="topic") String topic
) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
System.out.println(username);
System.out.println(topic);
return m;
}
前端是这个样子:
<a href="hello/ant/Tom/topic/Cat">ant</a>
与value={"ant/{username}/topic/{topic}"}一一对应。
还可以以这种形式:
@RequestMapping(value={"/regex/{number:\\d+}-{tel:\\d+}"})
public ModelAndView regex(
@PathVariable(value="number") int number,
@PathVariable(value="tel") String tel
) throws Exception {
// TODO Auto-generated method stub
ModelAndView m=new ModelAndView();
System.out.println(number);
System.out.println(tel);
return m;
}
前端是这个样子:
<a href="hello/regex/100-111">regex(正则)</a>
(2)这是有键传值:
@RequestMapping(value={"/ok1"})
public String ok1(@RequestParam(value="username") String username) throws Exception {
System.out.println(username);
return "show";
}
前端是这个样子:
<a href="user/ok1?username=Tom">有键传值</a>
这是无键传值:
@RequestMapping(value={"/ok2"})
public String ok2(@RequestParam String password,@RequestParam String username) throws Exception {
System.out.println(username);
System.out.println(password);
return "show";
}
前端是这个样子:
<a href="user/ok2?username=Tom&password=111">无键传值</a>
有意思的是它可以准确的对应好两个值。
SpringMVC的简单传值的更多相关文章
- SpringMVC的简单传值总结
之前学习SpringMVC时感觉他的传值很神奇:简便,快捷,高效. 今天写几个简单的传值与大家分享,希望能对大家有帮助. 一. 从后往前传: (1) @Controller @RequestMappi ...
- SpringMVC之简单的增删改查示例(SSM整合)
本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...
- spring+springMVC+mybatis简单整合
spring+springMVC+mybatis简单整合, springMVC框架是spring的子项目,所以框架的整合方式为,spring+Mybatis或springMVC+mybatis. 三大 ...
- springmvc用model传值到jsp页面,el表达式引用接收不到传递过来的值
springmvc用model传值到jsp页面,el表达式引用接收不到传递过来的值 查看下controller层代码可以发现,写的是没有错误的. @RequestMapping("list. ...
- springmvc springJDBC 简单实训银行账户管理系统
springmvc springJDBC 简单实训银行账户管理系统 1.简单介绍一下,在校时每周结束都会有一次学习总结,简称“实训”,这次实训内容是spring,因为是最近热门框架,我就先从基础方面开 ...
- springMvc 通过url传值,实现访问
springMvc 通过url传值,实现访问 1.创建web项目,引入相关jar包,并完成相应配置,在上一篇博客已经实现 2.在WEB-INF下创建jsp文件夹,并创建hello.jsp文件 < ...
- Maven+SpringMVC+Dubbo 简单的入门demo配置
转载自:https://cloud.tencent.com/developer/article/1010636 之前一直听说dubbo,是一个很厉害的分布式服务框架,而且巴巴将其开源,这对于咱们广大程 ...
- 关于RestfulAPI与SpringMVC之间的传值
##默认读者已经搭建好的SpringMVC的环境,并且对SpringMVC有着一定的了解,并且已经对RestfulAPI有了一定的了解 1,首先将WEB-INF下的web.xml里面的url-part ...
- Spring+SpringMVC+Hibernate简单整合(转)
SpringMVC又一个漂亮的web框架,他与Struts2并驾齐驱,Struts出世早而占据了一定优势,下面同样做一个简单的应用实例,介绍SpringMVC的基本用法,接下来的博客也将梳理一下Str ...
随机推荐
- C语言的结构体和 C++结构体的区别
C语言的结构体和 C++结构体的区别 关于C++中声明结构体中需要使用构造器创建实例对象的语法: <C++的结构体构造方法的基本概念:结构体的构造方法需要和结构体的名字相同,并且无返回值,也不 ...
- Java面试通关要点汇总整理【终极版】(转载)
简历篇 请自我介绍 请介绍项目 基础篇 基本功 面向对象的特征 final, finally, finalize 的区别 int 和 Integer 有什么区别 重载和重写的区别 抽象类和接口有什么区 ...
- C项目实践--图书管理系统(2)
前面在<<C项目实践-图书管理系统(1)>>中把系统中的三大功能模块中可能涉及到的常量,结构体及相关函数进行了声明定义,下来就来实现它们. 执行系统首先从登录到系统开始,所以首 ...
- linux进程编程入门
1.进程的创建与操作 任务描述: 在父进程中创建一个全局变量,一个局部变量,并赋予初始值,用fork函数创建子进程.在子进程中对父进程的变量进行自加操作,并且输出变量值,然后父进程睡眠一段时间 各进程 ...
- POJ - 1459 Power Network(最大流)(模板)
1.看了好久,囧. n个节点,np个源点,nc个汇点,m条边(对应代码中即节点u 到节点v 的最大流量为z) 求所有汇点的最大流. 2.多个源点,多个汇点的最大流. 建立一个超级源点.一个超级汇点,然 ...
- Easier SQL with Cupboard
Overview Cupboard is a way to manage persistence in a sqlite instance for your app. It was written b ...
- 《StackGAN: Text to Photo-realistic Image Synthesis with Stacked GAN》论文笔记
出处:arxiv 2016 尚未出版 Motivation 根据文字描述来合成相片级真实感的图片是一项极具挑战性的任务.现有的生成手段,往往只能合成大体的目标,而丢失了生动的细节信息.StackGAN ...
- asp.net MVC5 中的捆绑和更改bootstap默认的样式
在MVC5的视图中使用@Scritps.Render(),@Styles.Render() 分别可以加载样式和脚本.捆绑的和实际的路径都可以. 并且可以利用 编程的方式灵活引用css文件和脚本文件. ...
- rm -rf 的“幸存者”
原文:http://blog.jobbole.com/70971/ 以 root 用户执行 rm –rf / 命令,然后观察下哪些文件或者指令会幸存下来.结果是什么也没少!因此你必须增加 —no-pr ...
- markdown(语法)入门学习:
原文链接:https://segmentfault.com/a/1190000010223222#articleHeader9 1.标题 注:#后面保持空格 # h1 ## h2 ### h3 ### ...