最近在做一個(gè)Servlet+javaBean的項(xiàng)目,服務(wù)器用的是tomcat。因此,所有的頁(yè)面都是servlet請(qǐng)求,而且很多,需要在web.xml文件中進(jìn)行配置。導(dǎo)致web.xml文件特別大,而且這個(gè)系統(tǒng)以后會(huì)做大,并且會(huì)出現(xiàn)系統(tǒng)拆分,為了便于以后拆分,于是想到將web.xml文件中的servlet和servlet-mapping能夠從web.xml脫離出來(lái),用其他xml文件保存然后在web.xml文件中引入這些文件,就想類(lèi)似引入struts.config一樣。
在網(wǎng)上找了半天也沒(méi)找到,還是學(xué)哥厲害,找到了答案,在此向他致敬。
具體做法如下:
1,按模塊將servelet從web.xml中拷貝出來(lái),放到一個(gè)test.xml中,如test.xml中內(nèi)容如下:
<servlet>
<servlet-name>testA</servlet-name>
<servlet-class>TestA</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>testA</servlet-name>
<url-pattern>/testA.do</url-pattern>
</servlet-mapping>
2,在我的WEB-INF/web.xml中引入test.xml
<!DOCTYPE web-app
[<!ENTITY
test SYSTEM "
file:///D:/eclipse/workspace/Test/WebRoot/WEB-INF/test.xml">
<!ENTITY admin SYSTEM "admin.xml">]>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd"
>
&
test;
&
admin;
以上修改即可,web.xml會(huì)在開(kāi)頭引入你的test.xml.然后 &
test;表示你放的地方。
如果設(shè)定的是相當(dāng)路徑,可以如此設(shè)定:
如果test.xml和web.xml在同一個(gè)文件夾,則 [<!ENTITY
test SYSTEM "
test.xml">]
如果test.xml在web.xml所在文件夾的ccc文件夾中,則 [<!ENTITY
test SYSTEM "
ccc/test.xml">]
我的servlet是2.5,2.4應(yīng)該也管用,其他版本沒(méi)試過(guò)。
這樣,我可以在系統(tǒng)開(kāi)始設(shè)計(jì)時(shí),將各個(gè)模塊分開(kāi),便于以后系統(tǒng)拆分。
posted on 2009-04-09 18:34
分享愛(ài)的空間 閱讀(8371)
評(píng)論(17) 編輯 收藏