`

spring mvc自动绑定数据到对象

 
阅读更多
yxb1990 写道
dancewing 写道
Java代码 复制代码 收藏代码
  1. @Controller  
  2. public class TestBinderController {   
  3.   
  4.     @InitBinder("account")   
  5.     public void initBinder1(WebDataBinder binder) {   
  6.             binder.setFieldDefaultPrefix("acc.");   
  7.     }   
  8.     @InitBinder("user")   
  9.     public void initBinder2(WebDataBinder binder) {   
  10.             binder.setFieldDefaultPrefix("user.");   
  11.     }   
  12.   
  13.     @RequestMapping("/testInput")   
  14.     public String testBinderInput(){   
  15.        return "testInput";   
  16.     }   
  17.   
  18.     @RequestMapping("/testOutput")   
  19.     public void testBinderOuput(@ModelAttribute Account account,@ModelAttribute User user,BindingResult result){   
  20.         System.out.println(user);   
  21.         System.out.println(account);   
  22.     }   
  23. }  
@Controller
public class TestBinderController {

    @InitBinder("account")
    public void initBinder1(WebDataBinder binder) {
            binder.setFieldDefaultPrefix("acc.");
    }
    @InitBinder("user")
    public void initBinder2(WebDataBinder binder) {
            binder.setFieldDefaultPrefix("user.");
    }

    @RequestMapping("/testInput")
    public String testBinderInput(){
       return "testInput";
    }

    @RequestMapping("/testOutput")
    public void testBinderOuput(@ModelAttribute Account account,@ModelAttribute User user,BindingResult result){
        System.out.println(user);
        System.out.println(account);
    }
}

Java代码 复制代码 收藏代码
  1. <html>   
  2.   
  3. <body>   
  4. <form action="/testOutput" method="post">   
  5.     <input name="acc.loginId">   
  6.     <input name="user.loginid">   
  7.     <input type="submit">   
  8. </form>   
  9. </body>   
  10. </html>  
<html>

<body>
<form action="/testOutput" method="post">
    <input name="acc.loginId">
    <input name="user.loginid">
    <input type="submit">
</form>
</body>
</html>

这个方法试了下,可以,学到了,感觉如果楼主说的这个情况下比较少发生的话,可以用这种方法,改源代码暂时还动不了,


  多谢

到现在为止我是知道三种方法了
第一种是直接修改SpringMVC源码
第二种是使用@initBinder
第三种是新建Form封装类

条条大路通罗马~~~~~   iteye里面找到的,独立出来,备用

分享到:
评论

相关推荐

    spring MVC数据绑定大全

    Spring MVC会自动将请求参数绑定到该对象的属性上。 ```java public class UserForm { private String username; private String password; // getters and setters } @RequestMapping(value = "/saveUser...

    spring mvc 参数绑定漏洞

    3. **默认配置不当**:Spring MVC的默认配置可能允许过于宽松的数据绑定,例如允许空值绑定到非null字段,或者允许任意类型的参数绑定。 针对这些风险,开发者可以采取以下措施来增强Spring MVC应用的安全性: 1. *...

    Spring MVC数据绑定大全.rar

    8. **命令对象**:Spring MVC中的“命令对象”是一个用于封装请求数据的Java对象,它可以包含多个属性,这些属性对应于请求参数。 9. **错误处理**:当数据绑定或验证失败时,Spring MVC可以自动将错误信息添加到...

    Spring MVC数据绑定概述及原理详解

    当一个HTTP请求到达控制器方法时,Spring MVC会自动创建一个`DataBinder`实例,并使用`ConversionService`来处理类型转换和数据格式化。`DataBinder`将请求参数与控制器方法的参数匹配,然后将转换后的值赋给这些...

    Spring MVC jar包

    - **基本概念**:Spring MVC提供了一个灵活的MVC实现,包括请求映射、视图解析、模型绑定等功能。它通过DispatcherServlet作为前端控制器,负责接收请求并分发到相应的处理器。 - **组件**:主要包括Model、View、...

    第12章Spring MVC参数绑定的验证

    - **数组绑定**:Spring MVC支持将请求参数绑定到数组。比如,URL中的`ids[]=1&ids[]=2`会映射到`int[] ids`参数。 - **集合绑定**:同样,请求参数可以绑定到List、Set等集合类型。例如,JSON数组`["apple", ...

    最全最经典spring-mvc教程

    Spring MVC还支持数据绑定,自动将请求参数绑定到Java对象,这极大地简化了表单提交的处理。对于验证,Spring MVC提供了BindingResult和Validator接口,用于校验模型数据的正确性。 另外,Spring MVC与Spring框架的...

    spring mvc 4.0

    6. **数据绑定与验证**:Spring MVC提供了数据绑定和验证功能,允许将表单数据自动绑定到Java对象,并进行校验,简化了业务逻辑处理。 7. **视图解析**:Spring MVC 4.0支持多种视图技术,如JSP、FreeMarker、...

    Spring MVC 4.2.3

    5. **数据绑定和验证**:Spring MVC提供强大的数据绑定功能,将HTTP请求参数自动映射到处理方法的参数,并支持JSR-303/JSR-349 Bean Validation标准进行数据验证。 6. **异常处理**:通过定义全局异常处理器,可以...

    Spring.MVC-A.Tutorial-Spring.MVC学习指南 高清可复制版PDF

    例如,使用@ModelAttribute注解可以将请求参数绑定到Controller方法的参数上,@Valid用于进行数据验证,Validator接口可以自定义验证逻辑。国际化和本地化则可以通过消息源(MessageSource)来实现,为不同地区提供...

    SpringMVCDemo:Spring MVC 框架知识案例

    4.Spring MVC 域对象共享数据案例 5.Spring MVC @ModelAttribute 注解案例 6.Spring MVC 国际化案例 7.Spring MVC 请求转发与请求重定向案例 8.Spring MVC 下载 Excel 文档的需求案例 9.Spring MVC RESTful 风格的...

    Mastering Spring MVC 4(2015.09)源码

    表单提交的数据可以直接绑定到控制器方法的参数上,通过@ModelAttribute注解实现。Hibernate Validator或JSR-303/JSR-349规范的验证可以集成到模型属性的验证中,确保输入数据的有效性。 拦截器(Interceptor)是...

    Spring MVC使用Demo

    `@RequestParam`用于从请求参数中获取值,`@PathVariable`用于处理URL路径变量,`@ModelAttribute`则常用于绑定表单数据到模型对象。 此外,Spring MVC提供了ModelAndView类,它可以将处理结果(模型数据)和视图名...

    spring MVC_快速入门

    Spring MVC支持自动的数据绑定,可以将请求参数直接绑定到Controller方法的参数上,也可以将表单数据绑定到Java对象。此外,@Valid用于验证模型数据,配合Validator接口实现自定义校验规则。 7. **异常处理** ...

    精通Spring MVC4

    Spring MVC支持自动的数据绑定,将请求参数自动映射到Controller方法的参数上。同时,使用JSR-303/JSR-349提供的注解可以进行数据验证,如@NotNull、@Size等。 9. **上传下载** 使用MultipartFile处理文件上传,...

    Spring mvc5.0.3 所有jar包

    7. **参数绑定**: Spring MVC可以自动将请求参数绑定到Controller方法的参数上,无需手动获取。支持的参数类型包括基本类型、复杂对象、数组和集合。 8. **数据验证**: 通过集成JSR-303/JSR-349(Bean Validation)...

    spring mvc框架依赖全面jar

    `org.springframework.web.servlet-3.1.1.RELEASE.jar` 是Spring MVC的主要组件,它负责处理HTTP请求,提供模型-视图-控制器的实现,包括控制器、视图解析和模型数据绑定等功能。 `org.springframework.web-3.1.1....

    《精通Spring MVC 4》源码

    源码中,我们可以看到Spring如何解析请求参数并将其绑定到对象属性上,同时支持自定义转换器和验证器。 此外,Spring MVC的视图解析器是另一个重要部分,它负责找到合适的视图来渲染响应。例如,JSP、Thymeleaf或...

Global site tag (gtag.js) - Google Analytics