当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

SpringMVC入门 (二) 数值传递

发表于: 2013-12-07   作者:alleni123   来源:转载   浏览次数:
摘要: 环境还是上一篇的环境 http://alleni123.iteye.com/admin/blogs/1985571 这里就演示一下如何跟前台传递以及接收数值. 1.接收数值 修改LoginController的hello方法内容如下: @RequestMapping({"/hello","/"}) public String h
环境还是上一篇的环境 http://alleni123.iteye.com/admin/blogs/1985571
这里就演示一下如何跟前台传递以及接收数值.

1.接收数值
修改LoginController的hello方法内容如下:

@RequestMapping({"/hello","/"})
	public String hello(@RequestParam("username") String username){
		System.out.println("hello= "+username);
		return "hello";
	}

在浏览器中输入 项目地址+/hellomvc/hello?username=alleni
可以看到后台输出: hello alleni


2.传递数值
修改上面的方法:
       //这里去掉了@RequestParam("username"),不然会报错Required String parameter 'username' is not present。必须在请求中加入username的键值才行。
        @RequestMapping({"/hello","/"})
	public String hello(Map<String,String>context){
                context.put("username","eline");
		return "hello";
	}

在hello.jsp中加入:hello -> ${username}
打开浏览器,输入/hellomvc/hello,就可以看到context里面的数值被传到了页面上。

这里也可以用Spring提供的Model来传值:
	@RequestMapping({"/hello","/"})
	public String hello(@RequestParam("username") String username, Model model){
		//context.put("username", "eline");
		model.addAttribute("username", "eline");
		return "hello";
	}

Model和Map的作用是一样的,也是通过键值对来完成后台到前台的传值。进入Model源码就可以看到:
/**
	 * Return the current set of model attributes as a Map.
	 */
	Map<String, Object> asMap();



============================================
Model还有一个方法addAttribute(Object obj);
这里其实也是放置键值对到Model对象里面,只是key值由Spring通过对象类型来赋值。

比如我们输入 model.addAttribute(username);
这里Spring就会检测username的类型,得知是String以后,便将key设置成string.


这里举一个例子:
model.addAttribute(new User(1,"alleni"));
上面等价于:
mode.addAttribute("user",new User(1,"alleni"));
因为Spring查到参数是User类型,就把key设置成user了。


SpringMVC入门 (二) 数值传递

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
在C# winform编程中,我们经常会遇到不同窗口间需要传递数值的问题.比如数据库的应用,主窗口填写内容
springMvc 入门学习 (自动生成 springmvc 单表 两关联表 生成 及显示) 自动生成代码源码 下载 htt
springMvc 入门学习 (自动生成 springmvc 单表 两关联表 生成 及显示) 自动生成代码源码 下载 htt
springMvc 入门学习 (自动生成 springmvc 单表 两关联表 生成 及显示) 自动生成代码源码 下载 htt
对于任何事物的研究,总是由表及里、由浅入深地进行。在本系列的第二篇文章中,我们将通过不同的观
本文是专栏文章( SpringMVC深度探险)系列的文章之一,博客地址为: http://downpour.iteye.com/blo
本文是专栏文章( SpringMVC深度探险)系列的文章之一,博客地址为: http://downpour.iteye.com/blo
本文是专栏文章( SpringMVC深度探险 )系列的文章之一,博客地址为: http://downpour.iteye.com/b
经过连续多天的奋战(后来又经过了1年的完善),终于搞明白eclipse数模软件输出的egrid、init、unrs
原创不易,转载请注明出处:SpringMVC入门教程及其原理讲解和实例代码下载 代码下载地址:http://ww
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号