功能特點(diǎn)
1. 實(shí)現(xiàn)JAX-RS(javaee6提供Java API for RESTful Web Services)規(guī)范,定期的補(bǔ)充及發(fā)布;
2. 提供簡(jiǎn)介的方式完成RESTFull web service的請(qǐng)求和回應(yīng);
與spring mvc(后簡(jiǎn)稱(chēng)MVC)對(duì)比
1. jersey同樣提供DI,是由glassfish hk2實(shí)現(xiàn),也就是說(shuō),如果想單獨(dú)使用jersey一套,需要另外學(xué)習(xí)Bean容器;
2. MVC出發(fā)點(diǎn)即是WEB,但jersey出發(fā)點(diǎn)確實(shí)RESTFull,體現(xiàn)點(diǎn)在與接口的設(shè)計(jì)方面,如MVC返回復(fù)雜結(jié)構(gòu)需要使用ModelAndView,而jersey僅僅需要返回一個(gè)流或者文件句柄;
3. jersey提供一種子資源的概念,這也是RESTFull中提倡所有url都是資源;
4. jersey直接提供application.wadl資源url說(shuō)明;
5. MVC提供Session等狀態(tài)管理,jersey沒(méi)有,這個(gè)源自RESTFull設(shè)計(jì)無(wú)狀態(tài)化;
6. Response方法支持更好返回結(jié)果,方便的返回Status,包括200,303,401,403;
7. 提供超級(jí)特別方便的方式訪問(wèn)RESTFull;
技術(shù)內(nèi)幕
1. 使用HK2包掃描,自動(dòng)掃描包路徑下的@Path,@Provider等;
2. 使用jdk spi 技術(shù)發(fā)現(xiàn)注冊(cè)工具;
3. 同樣提供嵌入方式啟動(dòng)App作為web服務(wù)的功能;
4. 自帶spring插件功能,可以由spring管理bean;
5. Reactive方式的客戶(hù)端訪問(wèn)api,其中包括RxJava,java8,guava,JSR-166e;
CompletionStage<Response> stage = RxCompletionStage.newClient()
.target("http://example.com/resource")
.request()
.rx()
.get();
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。