我最後一次做Java Web開發是在2004年使用Java Servlets和JSP。我從來沒有真正使用過EJB。我記得我在開發Web服務\動態網站時遇到的經驗(開發時間較慢)和痛苦(易於部署)方面的經驗。如何學習Java Web服務?
這些天大多數企業用來開發基於Java的網站是什麼?您是否使用AXIS或其他框架來執行Web服務?你在前端使用JSP還是其他技術?
我最後一次做Java Web開發是在2004年使用Java Servlets和JSP。我從來沒有真正使用過EJB。我記得我在開發Web服務\動態網站時遇到的經驗(開發時間較慢)和痛苦(易於部署)方面的經驗。如何學習Java Web服務?
這些天大多數企業用來開發基於Java的網站是什麼?您是否使用AXIS或其他框架來執行Web服務?你在前端使用JSP還是其他技術?
當前的標準是使用JAX-WS(用於SOAP Web服務)和JAX-RS(用於RESTful Web服務)。
這些是有多個實現的標準。 JAX-WS有地鐵,CXF等JAX-RS已經新澤西的RESTEasy等
我會爲了
從2004年開始,工具支持和開發的便捷性也有了很大的提高。隨着對輕量級框架的日益關注(部分歸功於Spring),實現了web java中的服務並不容易。
在決定實施Web服務之前,您需要回答一個簡單的問題。肥皂或REST.I建議你形成自己的觀點,但這是我能想到的,在我頭上。 SOAP的
優點:
Cons of SOAP。 (Ask Roy Fielding ..)
上臃腫的Web服務協議webservices,他長出了常識的說法使用互聯網的SOA的背部骨羅伊Fieldings咆哮之後,出現了對REST一個平緩的動作。像Google和亞馬遜這樣的敏捷公司已經採用了REST,並且正在支持基於REST的Web服務。REST的
優點:
缺點:
我的偏好是REST和Jersey。它是一個了不起的框架,出色的支持,出色的文檔和用於測試的良好支持庫。
無論哪種方式,我將下載Netbeans IDE並使用它來開發基於REST或SOAP的Web服務的skeletol代碼。 Netbeans使得開始非常容易。一旦您熟悉代碼,就可以切換到您最喜歡的IDE。 (順便說一句,除了原型設計之外,我不使用Netbeans,它試圖做很多事情,並且其中大部分都很糟糕......無論如何我的意見)
我的意願是Apache Avro(在@ rodrigoap的答案中提到)。我現在在哪裏工作,我們有一個面向服務的架構,並使用Avro來提供內部服務。我們之所以選擇它是因爲它速度快,穩定,可以運行在http上(可以輕鬆地從Tomcat提供服務),可以自動生成客戶端類,並且可以使用多種語言。客戶類的生成對我們來說是一個很大的特性,因爲它意味着我們只處理Java對象,並讓Avro處理序列化並通過網絡發送內容。不用處理很多不同的url也是很好的。 Avro webservice由單個servlet託管,Avro負責如何將每個請求映射到實施類中的相應方法。
要再次引用@ rodrigoap的答案,他在Avro列表中放置了幾個其他選項,並且對於外部訪問的Web服務,我同意這些選擇是更好的選擇,因爲您的外部服務用戶可能不是'因爲您可能選擇了Avro而對此感興趣。
如果您對示例感興趣,可以參考sample Avro web service項目,瞭解它是如何工作的。
您的意思是Web服務與狹義上的WSDL或REST驅動服務或Java驅動的網站一樣嗎? – justkt 2011-04-11 20:52:59