`
superhj1987
  • 浏览: 205482 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

关于Spring mvc中modelattribute无法制定别名的解决方案

 
阅读更多

原文链接:http://rowkey.me/blog/2015/01/21/springm-mvc-model-attribute-alias/

 

最近由于项目需要,发现spring mvc在绑定参数时有这么一个缺陷。

  

Url: http://localhost:8080/api/test?user_name=testUser  

Controller:   

@Controller
@RequestMapping("/api")
public class ApiController extends BaseController {

    @RequestMapping(value = "/test", headers = "Accept=application/json")
    public void authUser(ModelMap modelMap, Account acc) {
        ResultPack.packOk(modelMap);
    }
}

public class Account{
    private static final long serialVersionUID = 750752375611621980L;

    private long id;
    private String userName;
    private String password;
    private AccountType type = AccountType.ADMIN;
    private long timeTag;
    private int status = 1;
    ...
    ...
}

 

user_name无法映射到acc的userName上。如果使用json的方式,可以使用JsonProperty注解来解决。否则,spring貌似没提供解决方案。  

于是追踪了一下spring mvc的源代码,发现可以通过重写ServletModelAttributeMethodProcessor来支持这个功能。  

github:  https://github.com/superhj1987/spring-mvc-model-attribute-alias

1
4
分享到:
评论

相关推荐

    精通Spring MVC 4

    , 在精通Spring MVC4中,我们将会从头开始构建一个有用的Web应用。本书共计10章,分别介绍了快速搭建Spring Web应用、精通MVC结构、URL映射、文件上传与错误处理、创建Restful应用、保护应用、单元测试与验收测试、...

    SpringMVCDemo:Spring MVC 框架知识案例

    5.Spring MVC @ModelAttribute 注解案例 6.Spring MVC 国际化案例 7.Spring MVC 请求转发与请求重定向案例 8.Spring MVC 下载 Excel 文档的需求案例 9.Spring MVC RESTful 风格的请求方式案例 10.Spring + Spring ...

    Spring MVC jar包

    - **DAO层**:Spring MVC中的Service层通常调用DAO层完成数据访问,DAO层使用Hibernate进行具体操作。 在`hibernate3.6.8.chm`文件中,可能包含了Hibernate 3.6.8的官方文档,对于深入理解Hibernate的工作原理和...

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

    此外,Spring MVC还能够与其他Spring模块(如Spring Security、Spring WebSocket等)无缝集成,提供完整的解决方案。 总之,“Spring MVC - A Tutorial”这份指南会详细讲解Spring MVC的各个核心组件和使用技巧,...

    最全最经典spring-mvc教程

    错误处理和异常处理也是Spring MVC中的重要部分,通过@ControllerAdvice和@ExceptionHandler可以全局处理异常,提供统一的错误页面。 最后,测试是任何应用程序开发的重要环节。Spring MVC提供了MockMVC,可以在不...

    Spring MVC 之@ModelAttribute使用.rar

    总的来说,`@ModelAttribute`是Spring MVC中处理HTTP请求数据和业务对象之间映射的关键工具,它使得开发者能够更便捷地进行数据绑定,提升了Web应用的开发效率。在实际开发中,熟练掌握`@ModelAttribute`的使用,...

    Mastering Spring MVC 4(2015.09)源码

    在Spring MVC中,开发者可以通过@Autowired注解自动装配依赖,使得代码更易于测试和维护。 此外,Spring MVC还提供了数据绑定和验证功能。表单提交的数据可以直接绑定到控制器方法的参数上,通过@ModelAttribute...

    Spring MVC使用Demo

    在Spring MVC中,Controller处理用户的请求,Model存储数据,而View负责渲染结果。 创建Spring MVC项目的第一步通常是设置开发环境。这通常包括安装Java Development Kit (JDK)、配置IDE(如IntelliJ IDEA或Eclipse...

    Spring MVC 教程快速入门 深入分析

    十三、如何给Spring3 MVC中的Action做JUnit单元测试:说明了如何对Spring MVC中的控制器进行单元测试,包括配置测试环境和编写测试代码。 十四、Spring MVC转发与重定向:详细讲解了在Spring MVC中如何使用转发和...

    Spring MVC 4.2.3

    在"Spring MVC 4.2.3"版本中,我们看到了一系列的功能改进和优化,以提升开发效率和应用性能。 首先,让我们深入了解Spring MVC的基础架构。模型(Model)负责存储应用的数据,视图(View)用于展示这些数据,而...

    spring-mvc-官方中文文档

    Spring MVC 是 Spring 框架的一个重要组成部分,用于构建基于 Java 的 Web 应用程序。这个官方中文文档详细地介绍了如何使用 Spring MVC 来开发高效、可维护的 MVC(Model-View-Controller)架构的应用。Spring MVC ...

    Spring MVC + Mybatis+Spring实现的个人博客系统

    总的来说,这个个人博客系统结合了Spring MVC的Web开发优势、Mybatis的数据库操作便利性以及Spring的全面企业级特性,提供了一个完整的后端解决方案。对于学习和理解SSM(Spring、SpringMVC、Mybatis)框架集成开发...

    spring mvc框架依赖全面jar

    在Spring MVC中,AOP常用于日志记录、事务管理等横切关注点,它可以将这些功能以声明式的方式与业务代码分离。 `ojdbc14.jar` 是Oracle数据库的驱动包,如果你的应用需要连接Oracle数据库,这个jar是必不可少的。 ...

    Spring MVC 4.2.4.RELEASE 中文文档

    尽管如此,这份中文文档可以帮助开发者理解Spring MVC的基本概念和使用方法,以便于快速上手和解决问题。由于官方文档无法访问,这份文档成为了临时的学习资源,虽然不够最新,但对于理解4.2.4版本的功能是足够了。...

    [Spring MVC] - ModelAttribute使用.docx

    总结起来,`@ModelAttribute`在Spring MVC中扮演了多种角色,包括数据绑定、控制器预处理方法、模型数据的创建以及HTTP上下文的设置。理解并灵活运用`@ModelAttribute`可以极大地提高我们的Spring MVC应用程序的效率...

    spring mvc 4.0

    在Spring MVC 4.0版本中,它引入了许多改进和新特性,以提升开发效率和应用程序的性能。 1. **依赖注入**:Spring MVC 4.0继续支持Spring框架的核心功能,依赖注入(DI),允许开发者通过配置来管理对象及其依赖...

    spring mvc RequestParam与 ModelAttribute异同.docx

    在Spring MVC框架中,`@RequestParam` 和 `@ModelAttribute` 是两种常见的注解,用于从HTTP请求中绑定数据到控制器方法的参数。虽然它们都用于处理请求参数,但它们的作用和使用场景有所不同。 1. **`@RequestParam...

Global site tag (gtag.js) - Google Analytics