亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關于現在REST API的Java服務端Controller層的作用是否越來越小了?各位有什么建議?

關于現在REST API的Java服務端Controller層的作用是否越來越小了?各位有什么建議?

大話西游666 2019-08-17 10:34:59
現在越來越多前后端分離項目,大多數Java服務端都只提供REST接口。Controller層感覺好多都只是將參數轉給Service層而已例如曾經見到的代碼:@RestControllerpublicclassLoginController{@AutowiredprivateLoginServiceloginService;@RequestMapping("/login")publicApiResultlogin(StringuserName,Stringpassword){returnloginService.login(userNmae,password);}}Java服務端要實現一個接口,感覺還是挺麻煩的,要建立Controller,Service,ServiceImpl,DAO,DaoImpl大體五個文件,現在的ORM框架基本都支持代理,少了DaoImpl。但還是有四個文件需要創建。今天看到了Spring-data-rest覺得他的設計思路很好,但還是沒有找到自定義返回結果的方法.只需要一個注解就自動生成了RESTAPI接口@RepositoryRestResource(path="user")@RepositorypublicUserDaoextendsJpaRepository{}//就一個@RepositoryRestResource注解就生成了以下幾個接口GEThttp://localhost:8080/user//用戶列表GEThttp://localhost:8080/user/{id}//單個用戶POSThttp://localhost:8080/user//創建用戶以application/jsonPUThttp://localhost:8080/user/{id}//更新用戶信息請求體為applcation/json還有HEAD,PATCH,DELETE等接口當然spring-data-rest有很多不足,但框架有意的封裝Controller層,這是否說明Java服務端REST服務可以無Controller.可以不用寫Controller層代碼。只關心業務邏輯?@RestServicepublicinterfaceLoginService{@RequestMapping("/login")ApiResultlogin(StringuserName,Stringpassword);}類似上面的代碼是否我們對于@RestService的需求要大于@RestController?Controler層是否在現如今的REST服務下作用已經很小了?
查看完整描述

2 回答

?
Cats萌萌

TA貢獻1805條經驗 獲得超9個贊

個人覺得,springmvc模式中,一個http請求過來,處理請求的還是servlet,是否需要controller其實影響不大,如果可以封裝的更高效,更便捷,那最好。
查看完整回答
反對 回復 2019-08-17
  • 2 回答
  • 0 關注
  • 299 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號