簡體   English   中英

在Spring應用程序中使用RestController和Controller的最佳實踐

[英]Best practice to have a RestController and a Controller in Spring Application

我不是在問這是否可能 ,我知道它是,但我想知道在我的應用程序中有一個前端,提供休息服務的最佳方式是什么。

我正在開發一個Spring Boot應用程序,我目前有一個調用jsp頁面的控制器和一個單獨的 RestController。 我希望能夠使用Android應用程序使用它。

那么在我的應用程序中同時擁有一個Controller和一個單獨的 Restcontroller是否正確? 例如,將從/ api / *調用Rest控制器方法。


編輯:我知道兩者之間的區別,但因為我希望能夠返回一個視圖(我不應該使用RestController)並且我想要一個休息服務我想知道我是否可以同時擁有他們(當然是分開的)。

非常感謝你提前。

我會說這是可能的,但在一個典型的,分層的Spring應用程序中,它被認為是一種不好的做法(除了在REST應用程序中像Swagger的控制器這樣的角落案例)(將會回到那里)
您可能想要創建一個多模塊項目,可能看起來像這樣:

  • 父項目
    - 核心
    - web api(基於jsp)
    - rest api(適用於android)

web api和rest api都取決於核心。
web api和rest api是單獨的部署單元。 您可以將它們部署在同一台服務器上,也可以作為單獨的應用程序運行(例如使用spring boot)。 取決於你的用例。
有了它,您可以將您的業務邏輯放在一個地方(核心)。

您可能還想了解ports and adapters架構,這可能會讓您了解如何以更有條理的方式解決此問題,而不僅僅是將控制器和RestControl並排放置

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM