我想創建新的RESTful應用程序。我對框架有點困惑,我可以用spring + jersey做到,但是我可以單獨使用球衣做同樣的應用嗎?創建java RESTful應用程序
SpringREST和澤西島之間的主要區別是什麼? 哪個更方便?爲什麼?
2
A
回答
1
主要區別在於Jersey是基於標準的,而Spring MVC不是,如果這對您很重要。兩者都非常好。
我在Jersey(我使用1.x)中發現的主要優點是它可以自動自動使用Jackson JSON Views,而Spring MVC則無法自動使用。另外,Spring MVC中的錯誤處理有點令人煩惱,因爲錯誤頁面默認爲標準HTML。
還有另一個你沒有列出的項目,那就是Spring Data + Spring HATEOAS,它比較新,但看起來很不錯。
2
我已經使用了兩個框架。 Spring是一個涵蓋很多領域的大型框架/ API,其中之一就是休息服務。澤西島另一方面只是休息。它是JAX-RS API的參考實現(JSR 311 & JSR 339)。
這基本上是Java中休息的「標準」方式。還有其他的實現像RestEasy。從理論上講,您的代碼只需要引用常見的JAX-RS接口,這意味着如果需要,您應該能夠在以後交換到不同的實現。如果您不依賴於不屬於JAX-RS標準的定製功能,這顯然只適用。
如果你要使用澤西島,你可能仍然決定你想春天。僅僅依靠它的依賴注入是有用的。在這種情況下,您可能有一個JAX-RS類處理休息請求,然後調用已注入的彈簧服務。這實際上是我編寫其他API的方式。
是否應該使用spring來編寫其餘的服務,或者JAX-RS是主觀的,真的取決於你。就我個人而言,我使用標準的JAX-RS API,因爲我發現它更側重於休息。 spring rest方法基本上是spring-mvc的擴展,最初用於JSP。我發現使用JAX-RS比使用spring-mvc更容易處理錯誤。這就是說別人可能會乞求不同。另一個好處是遵循標準理論,如果您想切換到不同的提供商,您將來可以擁有更多的靈活性。
相關問題
- 1. RESTful應用程序的Java API設計
- 2. 如何使用eclipse IDE爲fabric8創建java應用程序/ RESTFul服務?
- 3. 用Java創建天氣應用程序
- 4. 用Java創建獨立應用程序
- 5. 創建Java Web應用程序/ MySql應用程序
- 6. 通過java創建iis應用程序
- 7. 創建Java應用程序中
- 8. 創建獨立的Java應用程序
- 9. 創建Java應用程序安裝包
- 10. 創建Java桌面應用程序
- 11. 創建從Android的Java應用程序
- 12. 爲Java應用程序創建PDF
- 13. 創建Java RESTful Web服務
- 14. RESTful MVC應用程序
- 15. Django Restful API應用程序
- 16. 如何使用Java servlet創建RESTful API?
- 17. Facebook Restful API創建反應
- 18. Restful Web應用程序與Node.js?
- 19. 爲Java應用程序創建安裝程序
- 20. 爲java應用程序創建自定義安裝程序
- 21. 如何爲Java應用程序創建安裝程序?
- 22. 爲java web應用程序(linux和Windows)創建安裝程序
- 23. 從RESTful Roo應用程序需要應用程序/ json
- 24. 創建子應用程序
- 25. 上創建應用程序
- 26. 創建Android應用程序
- 27. 創建應用程序
- 28. 創建WiFi應用程序
- 29. Jawbone創建應用程序
- 30. 創建Web應用程序