java–Spring MVC @RequestParam– 多个关键名称?或另一种要求“一个或另一个”的方式

java–Spring MVC @RequestParam– 多个关键名称?或另一种要求“一个或另一个”的方式,第1张

概述允许多个名称用于查询参数的最佳方法是什么?我有一个已更改参数名称的Web服务,但必须继续一段时间才能接受旧名称.我不愿意创建2个RequestParams,两者都不是必需的,b / c我确实需要一个或另一个存在.像这样的东西会很甜蜜:@RequestParam(value = 'startTime|start', required = true ) Stri

允许多个名称用于查询参数的最佳方法是什么?我有一个已更改参数名称的Web服务,但必须继续一段时间才能接受旧名称.

我不愿意创建2个RequestParams,两者都不是必需的,b / c我确实需要一个或另一个存在.像这样的东西会很甜蜜:

@RequestParam(value = "startTime|start",required = true ) String startTime,

而不是

@RequestParam(value = "startTime",required = false ) String startTime,@RequestParam(value = "start",required = false ) String start ){if ( start != null || startTime != null ){ //  ... 

有没有办法做到这一点?谢谢.最佳答案你可以做这样的事情(创建一个代理方法,拦截“旧”调用并将它们转移到新方法):

@RequestMapPing(value="/your-mapPing",params = {"oldparam1","oldparam2",...})public Whatever youroldMethod(@RequestParam(value="oldparam1",required=true) String oldParam1,...){   return yourNewMethod(oldParam1,...);}@RequestMapPing(value="/your-mapPing",params = {"newparam1","newparam1",...})public Whatever yourNewMethod(@RequestParam(value="newparam1",...){   //do whatever you need to do here}

如果您不需要支持旧呼叫,只需删除youroldMethod即可.

这里的美丽是使用@RequestMapPing的“params”,因此允许2种方法听同一个“URL”(每个都有不同的参数)

总结

以上是内存溢出为你收集整理的java – Spring MVC @RequestParam – 多个关键名称?或另一种要求“一个或另一个”的方式全部内容,希望文章能够帮你解决java – Spring MVC @RequestParam – 多个关键名称?或另一种要求“一个或另一个”的方式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1269340.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存