restful api的spring實現

 

RESTful web服務最近有多流行已經無需我多評價。是的,你的確需要它,但如何選擇呢?我嘗試了不同的Java REST框架,基本上都是Jersey和Spring MVC。我認爲大多數情況下Spring是構建RESTful應用程序的首選。

如果你已經有了一個Spring app,接下來不需要做任何複雜的配置就可以用Spring開始實現RESTful API了。只要使用標準的註解配置向下面這樣配置JSON視圖解析器(view resolver ):

//這個示例使用了Groovy,相信你能夠理解
@Constoller
@RequestMapping('/api/user')
class UserApi {
@RequestMapping(value = '/{id}', method = RequestMethod.GET)
User get(@PathVariable long id) {
//... load user, etc
}
 
@RequestMapping(value = '/{id}', method = RequestMethod.POST)
User update(@PathVariable long id, @RequestModel User updated) {
//... load user, update values, etc
}
}
 

當然,你可以不用JSON轉而XML或者使用ProtoBuf以及其他什麼。這很簡單而且不會因爲修改造成代碼錯誤,比起Jersey要簡單很多。

通常你的應用程序除了RESTful API還會有其他東西,比如標準的HTML頁面、文件下載/上傳、複雜的API請需求數據流處理、重要的後臺處理、數據庫訪問、複雜的認證和授權與外部服務集成等等。Spring框架可以將這些完成得很好。同時我最喜歡的就是,通常會有兩種辦法達成目標:“應急辦法”和常規辦法:)

實際上我是Grails web的粉絲,我真的很喜歡它並且爲Grails寫了一些插件。我相信構建傳統 web應用方面Grails是最好的框架。但是當我看見採用RESTful構建和一些現代應用之後(大多數是“單頁面App”)——我總是會建議使用Spring MVC (+ Groovy,這又是另外一個話題)。

一些有用的鏈接:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章