我正在學習web服務,並看到了各種示例。其中一些人使用@WebService
和/或@WebMethod
註釋,而其他人則沒有。我的問題是;是否有必要使用這些註釋,不使用的缺點是什麼?關於web註釋的困惑
1
A
回答
0
僅需要使用@WebService註釋。開發Web服務時需要它們以獲得更大的靈活性。只要看看@WebService和@WebMethod的javadoc。它們有很多屬性定義了你的服務將如何被公開,因爲它們通常用於生成WSDL文件,所以你可以自定義它的不同部分。 通常,我傾向於使用註釋來配置我的服務對於其客戶的外觀如何具有更高的靈活性。 因此,這些註釋用於定義和定製您的服務與其客戶之間的合同。
1
您應該先了解一下注釋的含義。有用的起點是Oracle教程http://docs.oracle.com/javase/tutorial/java/javaOO/annotations.html;一個不完整的(但有用的)總結是註釋將元數據添加到可在運行時檢查的類文件。
這些註釋供EJB容器使用。註解告訴容器一個方法將作爲一個Web服務公開,並且容器會自動將它們公開,並附帶一些額外的配置。 Spring容器有自己的一組註解來完成同樣的事情。
沒有任何理由不能跳過註釋並將web服務從頭開始編寫爲簡單的servlet,但通常只需關注業務邏輯並讓容器執行翻譯工作就會更清潔,更快速,更有用你的代碼爲你服務。
相關問題
- 1. 關於Web服務的困惑
- 2. 關於C指針釋放困惑
- 3. Task.Factory.StartNew - 關於池的困惑
- 4. 關於MutationObserver的困惑
- 5. 關於objc_getClass的困惑
- 6. 關於DBus的困惑
- 7. 關於AverageTimer32 PerformanceCounter的困惑
- 8. 關於Thread.Join的困惑
- 9. 關於MusicService的困惑
- 10. 關於結構的困惑
- 11. 關於memset的困惑
- 12. 關於FTP的困惑
- 13. 關於Access Specifier的困惑
- 14. 關於線程的困惑
- 15. 關於Kleene星的困惑
- 16. 關於PhoneGap/Cordova的困惑
- 17. 關於MKOverlayView的困惑
- 18. 關於[NSDate date]的困惑
- 19. 關於流的困惑
- 20. 關於GAC的困惑
- 21. 關於CTE的困惑
- 22. 關於URLMapping的困惑
- 23. 關於InetAdress.getByName()的困惑
- 24. 關於「implements Runnable」的困惑
- 25. iPhone:關於NSAutoreleasePool的困惑
- 26. 關於鎖的困惑
- 27. 關於FROM_UNIXTIME的困惑
- 28. 關於回調的困惑
- 29. 關於require.js的困惑
- 30. 關於pthread_cond_wait的困惑
J2SE中的註釋[也可以使用](http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2/)。不需要EJB容器。 – szhem