springController:

  1. @Controller
  2. @RequestMapping("/user")
  3. public UserController extends BaseController{
  4. @RequestMapping("/addUser")
  5. public void testBinderOuput(@ModelAttribute User user, HttpServletRequest request, HttpServletResponse response){
  6. System.out.println(user);
  7. }
  8. }

Use对象:

  1. public Class User{
  2. private String name;
  3. private int sex;
  4. private String address;
  5. private int id;
  6. public int getSex() {
  7. return sex;
  8. }
  9. public void setSex(int sex) {
  10. this.sex = sex;
  11. }
  12. public String getAddress() {
  13. return address;
  14. }
  15. public void setAddress(String address) {
  16. this.address = address;
  17. }
  18. public int getId() {
  19. return id;
  20. }
  21. public void setId(int id) {
  22. this.id = id;
  23. }
  24. public void setName(String name) {
  25. this.name = name;
  26. }
  27. }

请求路径: localhost/user/addUser?user.name="test" 那么在后台接受到的参数中,user对象的name属性是null。如果路径换为localhost/user/addUser?name="test",则user对象的name属性是test。 这里必须用name="test"而不是user.name="test",因为默认情况下springMVC是不支持user.name这种传参方式的。

如果有个对象manager中也有name这个相同的属性,那么可以采用user.name,manager.name来传输参数。但是这个需要在controller中添加一个前缀绑定:

添加绑定前缀后的controller类如下:

  1. @Controller
  2. @RequestMapping("/user")
  3. public UserController extends BaseController{
  4. @InitBinder("manager")
  5. public void initBinder1(WebDataBinder binder) {
  6. binder.setFieldDefaultPrefix("manager.");
  7. }
  8. @InitBinder("user")
  9. public void initBinder2(WebDataBinder binder) {
  10. binder.setFieldDefaultPrefix("user.");
  11. }
  12. @RequestMapping("/addUser")
  13. public void testBinderOuput(@ModelAttribute User user, HttpServletRequest request, HttpServletResponse response){
  14. System.out.println(user.getName);
  15. }
  16. @RequestMapping("/addManager")
  17. public void testBinderOuput(@ModelAttribute Manager manager, HttpServletRequest request, HttpServletResponse response){
  18. System.out.println(manager.getName);
  19. }
  20. }

这样在使用连接localhost/user/addUser?user.name="test",去请求时,后台拿到的name的参数就不为null了。

Spring MVC中如何传递对象参数的更多相关文章

  1. Spring MVC控制层传递对象后在JSP页面中的取值方法

    List<Order> orders = new ArrayList<Order>(); for (int i = 0; i < 3; i++) { Order t = ...

  2. Spring mvc解决url传递中文参数乱码问题

    在tomcat服务器中,修改server.xml参数,如<Connector URIEncoding="UTF-8" connectionTimeout="2000 ...

  3. spring mvc 处理pojo传递对象时该对象继承父类的属性在网络接收端接收该属性值总是null,why?

    //=========================== 情形一: ===============================//在网络上传递User1类对象时info属性值在网络的另一端能够接 ...

  4. jQuery 传递对象参数到Spring Controller

    当jQuery 发送ajax请求需要传递多个参数时,如果参数过多,Controller接收参数时就需要定义多个参数,这样接口方法会比较长,也不方便.Spring可以传递对象参数,将你需要的所有查询条件 ...

  5. Spring MVC中forward请求转发2种方式(带参数)

    Spring MVC中forward请求转发2种方式(带参数) http://www.51gjie.com/javaweb/956.html  

  6. Spring MVC 中的基于注解的 Controller【转】

    原文地址:http://my.oschina.net/abian/blog/128028 终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 H ...

  7. Spring MVC中基于注解的 Controller

         终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法以响 ...

  8. Spring MVC中各个filter的用法

    转载:http://blog.csdn.net/qyp1314/article/details/42023725 Spring MVC中各个filter的用法 2014-12-19 09:08 105 ...

  9. Spring MVC 中的基于注解的 Controller(转载)

           终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法 ...

随机推荐

  1. BZOJ_1013_[JSOI2008]_球形空间产生器_(高斯消元)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1013 n维空间,给出球上n+1个点的n维坐标,求球心坐标. 提示:给出两个定义:1. 球心:到 ...

  2. 【转】下载太慢?简单设置让iTunes提速十几倍

    原文网址:http://www.startos.com/mac/ipad/tips/2010120713291.html 今年可以说是苹果欢笑的一年,ipad的发布,iphone4的成功,让用苹果设备 ...

  3. .net,sessionState的Session共享问题解决方案

    最近项目因为要负载均衡所以就使用了sessionState的Session共享,但是却发现多台服务器中有个别服务器的Session没有共享,于是就有了这篇文章,下面开始说说. 这个基本上就分两种情况: ...

  4. VC一些经验系列: 《分享泄漏检测工具:内存、DC、GDI、Handle... 》

    分享下自己工作中用到的一些用于泄漏检测的工具 后面的是DC的一些定义和注意事项.(不喜勿看) //=================================================== ...

  5. 一步一步学Remoting系列文章

    转自:http://www.cnblogs.com/lovecherry/archive/2005/05/24/161437.html (原创)一步一步学Remoting之一:从简单开始(原创)一步一 ...

  6. mysql 查看死锁和去除死锁

    1.查询是否锁表show OPEN TABLES where In_use > 0; 2.查询进程 show processlist 3.  查询到相对应的进程,然后 kill id 验证(ki ...

  7. MEF学习小结 z

    1.什么是MEF. MEF,全称是Managed Extensibility Framework.它是.NET Framework4.0的一个类库,其主要目的是为了创建可扩展的应用程序.按照官方说法就 ...

  8. CONTAINING_RECORD 宏

    Windows中提供了一个宏 #define CONTAINING_RECORD (address, type, field ) ((type *)( \ (PCHAR)(address ) - \ ...

  9. lightoj 1004

    很水的一个dp #include<cstdio> #include<iostream> #include<cstring> #include<algorith ...

  10. 关于在SharePoint2013中弹出模态化窗口的问题及关闭事件。

    js: /*弹出对话框方法开始*//** 弹窗方法(需要回传值时,自定义回调方法)* @url: 弹出窗口页面url* @width: 宽度* @height: 高度* @callback: 回调函数 ...