2015-04-06 45 views
2

此前的servlet版本(低於3.0),我們用web.xml文件作爲部署描述符: web.xml中哪個更好的專業(web.xml中(部署描述符)或@WebServlet標註使用

<web-app> 
<servlet> 
    <servlet-name>WebServlet</servlet-name> 
    <servlet-class>LoginServlet</servlet-class> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>WebServlet</servlet-name> 
    <url-pattern>/Login</url-pattern> 
    </servlet-mapping> 

    <welcome-file-list> 
    <welcome-file>index.html</welcome-file> 
    </welcome-file-list> 
</web-app>  

現在用的Tomcat的7.0和servlet V3.0的幫助下,我們使用@WebServlet標註 如:

@WebServlet(
    name = "AnnotatedServlet", 
    description = "A sample annotated servlet", 
    urlPatterns = {"/Login"} 
) 
public class LoginServlet extends HttpServlet { 
    // servlet code here... 
} 

現在我的問題是這是更好地使用職業盟友? 需要你誠實的建議。 在此先感謝。

回答

2

這取決於你的需要:

    如果你喜歡把所有的東西配置在一個地方
  • 做你的web.xml
  • 否則,如果你的東西(像我一樣)的XML當我們處理大量的聲明和配置項目時,配置文件變得太重,所以只需跳轉到註釋。

我本人來說perefer的註解,因爲它是屬於我的Java代碼,我發現我自己就可以了,但處理大XML配置文件(也許這不是你的情況在這裏)是booring,並採取大量的時間,從我得到我在找什麼(這是我個人的看法)

另一方面,當我們事情profesionnaly這一點時,它並不重要,因爲當應用程序工作正常時,沒有人會問你你爲Sevlet聲明選擇了什麼。

0

讓我們以這種方式來說明:如果註釋提供了功能並作爲註釋本身,並且不會將代碼綁定到某個特定過程以便在沒有此註釋的情況下正常運行,那麼繼續註釋。例如,標記爲事務性的事務性方法不會中止其操作邏輯,並且也可以作爲良好的代碼級別評論。否則,這個信息最好用XML表示,因爲儘管它最終會影響代碼的運行方式,但它不會改變代碼的主要功能,因此不屬於源文件。

所以在這裏我推薦你xml配置。

2

這個問題比較主觀。有些人喜歡將行爲與配置分開,因此更願意使用XML配置。就我個人而言,我更喜歡使用註釋,因爲當我讀取代碼時,我可以在處看到配置。選擇一種你喜歡的風格,並堅持下去。雖然可以混合配置樣式,但我建議保持一致並使用一種樣式。

0

在我看來,最好的方法是堅持一種風格,所以新的程序員不會對某種方式感到困惑。

如果您的容器支持註釋,請堅持使用註釋,但將其作爲一個規則(您可以爲整個公司制定一個約定)。

您應該考慮的另一件事是,使用XML配置文件,您的所有配置都在一個文件中,使得在不瀏覽所有文件的情況下更容易理解系統。

相關問題