首页 > Spring mvc 中如何转换参数名称

Spring mvc 中如何转换参数名称

现在是这样的,我接口参数定义的方式:多个单词用下划线来连接,例如:“user_id”,但是后台接收想通过 userId 的方式定义,这样的话,就要做参数的转换,请教下在不侵入 spring 框架的基础上该在哪里去做呢?

之前想到使用 argument-resolvers 来做,通过继承三种类型的参数入驻类修改对应的注入参数时的匹配代码。
但是貌似行不通,spring mvc 的 RequestMappingHandlerAdapter 默认注册了 很多种类型的 argument-resolvers 用于绑定参数数据的。 当一个参数被第一个argument-resolvers 拦截了,貌似后面的argument-resolvers 都无效的。


第一种:

@RequestMapping(value = "/test/{user_id}")
public void test(@PathVariable String user_id) {
    // ...
}

第二种:

@RequestMapping(value = "/test")
public void test(String user_id) {
    // ...
}

我觉得尽量遵循约定大于配置的规范比较好,能不用自定义就不要用了,麻烦


@RequestMapping(value = "/test")
public void test(@RequestParam("user_id") String userId) {
    // ...
}

难道不是用@RequestParam么?

【热门文章】
【热门文章】