跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • springboot 怎么在 controller 上注解让不同的 url 支持不同的 method?
未分類
15 11 月 2020

springboot 怎么在 controller 上注解让不同的 url 支持不同的 method?

springboot 怎么在 controller 上注解让不同的 url 支持不同的 method?

資深大佬 : noble4cc 0

比如 url1 需要只支持 POST url2 只支持 GET 两个 url 映射到一个方法上,有什么好的方式,如果使用 RequestMapping 分别写两个 url 和 method,会产生四种组合感觉不是太好

老项目做 restful 改造,兼容老的,照顾新的确实很麻烦

大佬有話說 (16)

  • 資深大佬 : chendy

    @ GetMapping(“url1”)
    @ PostMapping(“url2”)
    public void method(){
    }

    不知道是不是这个意思
    (为了不艾特到人加了个空格)
    ( /t/724499 可能不是 java 的锅应该是项目的锅)

  • 主 資深大佬 : noble4cc

    好像不行老哥,你可以试下,最终只能用一个 url

  • 資深大佬 : LGA1150

    写两个 method,method2 直接调用 method1

  • 資深大佬 : tangkaichuan

    把内容用 service 装起来,多个 controller 调同一个 service

  • 資深大佬 : ChanKc

    抽象类写方法实现,然后用两个 controller 分别继承,调用 super

  • 資深大佬 : xgfan

    ????上面都是不看文档瞎答的吗

    @RequestMapping(value = {“hello”,”world”},method = {RequestMethod.GET,RequestMethod.POST})

  • 資深大佬 : xuanbg

    6 是对的,但换我做这个事情,才不来写 @RequestMapping(value = {“hello”,”world”},method = {RequestMethod.GET,RequestMethod.POST})这种奇怪的代码。

    写两个 Controller,一个是旧版本兼容的,一个是船新的。不过这两个 Controller 都调用同一个 service 。这个代码结构新旧分明好维护好扩展。

  • 資深大佬 : wangsongyan

    @xgfan 代码运行没问题,但没达到主想要的效果

  • 資深大佬 : jwenjian

    (只)支持

  • 資深大佬 : hand515

    @xuanbg 只支持,你这没用,还是要两个方法

  • 資深大佬 : dengshen

    @requestmapping 不写具体的请求方式的话应该是支持所有的 http 请求

  • 資深大佬 : baozijun

    一个新 controller 即可,分装不同的 service

  • 主 資深大佬 : noble4cc

    @LGA1150 现在就是这么搞的,但是像打补丁有点恶心

  • 主 資深大佬 : noble4cc

    @ChanKc 这样成本太高,改动太大了

  • 主 資深大佬 : noble4cc

    @xuanbg 这种我现在就是这么干的,但是会组合出四种请求方式,不太规范但是可以跑

  • 資深大佬 : THESDZ

    1.新老应该隔离开不同的入口
    2.老的应该打上 过时 标记

    不要为了兼容而搞奇奇怪怪的代码啊,后面的人怎么接手啊,哦,完成任务就行,那没事了

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具