zoukankan      html  css  js  c++  java
  • 如何在web.xml文件中引入其他的xml文件

    最近在做一个Servlet+javaBean的项目,服务器用的是tomcat。因此,所有的页面都是servlet请求,而且很多,需要在web.xml文件中进行配置。导致web.xml文件特别大,而且这个系统以后会做大,并且会出现系统拆分,为了便于以后拆分,于是想到将web.xml文件中的servlet和servlet-mapping能够从web.xml脱离出来,用其他xml文件保存然后在web.xml文件中引入这些文件,就想类似引入struts.config一样。
           
    在网上找了半天也没找到,还是学哥厉害,找到了答案,在此向他致敬。
           
            具体做法如下:
                1,按模块将servelet从web.xml中拷贝出来,放到一个test.xml中,如test.xml中内容如下:
                    <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会在开头引入你的test.xml.然后  &test;表示你放的地方。
    如果设定的是相当路径,可以如此设定:
                如果test.xml和web.xml在同一个文件夹,则   [<!ENTITY
    test SYSTEM  "test.xml">]
                如果test.xml在web.xml所在文件夹的ccc文件夹中,则  [<!ENTITY
    test SYSTEM  "ccc/test.xml">]


            我的servlet是2.5,2.4应该也管用,其他版本没试过。

            这样,我可以在系统开始设计时,将各个模块分开,便于以后系统拆分。

  • 相关阅读:
    php composer 相关及版本约束等小技巧
    Jquery 获取表单值如input,select等方法
    Apache benchmark 压力测试工具
    Linux中的随机数文件 /dev/random /dev/urandom
    redis持久化
    Python---装饰器
    高仿拉手网底部菜单实现FragmentActivity+Fragment+RadioGroup
    python实现二叉树和它的七种遍历
    Spring AOP应用实例demo
    二维数组的列排序
  • 原文地址:https://www.cnblogs.com/liukedong/p/3779725.html
Copyright © 2011-2022 走看看