最近在做一个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应该也管用,其他版本没试过。
这样,我可以在系统开始设计时,将各个模块分开,便于以后系统拆分。
如何在web.xml文件中引入其他的xml文件
时间: 2024-12-25 16:17:44
如何在web.xml文件中引入其他的xml文件的相关文章
如何在一个js文件中引入另外的js文件
例如想要在a.js中引用b.js.c.js和d.js document.write("<script language='javascript' src='b.js'></script>"); document.write("<script language='javascript' src='c.js'></script>"); document.write("<script language='ja
XML配置中 引入外部property文件
新建properties配置文件 内容如下: jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc\:mysql\://localhost\:3306/book_mybatis?user\=root&password\=root&useUnicode\=true&characterEncoding\=UTF-8 有两个属性, ①jdbc.dirverClassName ; ②jdbc.url. <!-- 导入属性配置
使用Maven构建Java Web项目时,关于jsp中引入js、css文件路径问题。
今天有点闲,自己动手搭建一个Java Web项目,遇到jsp中引入js.css文件时路径不正确的问题,于是在网上查阅了很多资料,最终都无法解决问题,于是,上stackoverflow找到了解决方法,这里不得不吐槽一下国内资料的可信度,不说了,以后遇到问题尽量还是google吧,花点钱买个vpn值了,生命有限,节约时间. 下面记录下解决方法吧: 首先,确保jsp引入了jstl:<%@ taglib uri="http://java.sun.com/jsp/jstl/core" pr
【jsp】怎么在jsp文件中引入静态文件(.js .css)
如果在jsp文件中引入静态文件比如(.js或.css等等),可以在使用 /项目名称/路径 的方式,但是这种方式如果在修改了项目了名称后就显得比较麻烦了.除了之外还许多方式,比如相对路径等等.一般情况下,可以先获得项目的根路径,然后再加上文件路径. ${pageContext.request.contextPath} 可以获得当前项目的路径,然后就只需要在后面加上引入的静态文件的文件路径即可.比如: 这样就可以引入js文件下的jquery.min.js文件了.
解决在html中引入font-awesome的css文件后, 图标显示不出来
今天小颖在做项目时,需要在html文件中引入font-awesome.min.css,但是引入后: 虽然小颖已经在html中引入了 font-awesome.min.css ,但是图标并没有出来,怎么解决呢? 其实只需要把font-awesome中的fonts文件夹放在与font-awesome.csss所在的css文件夹同级的位置问题就解决啦,嘻嘻. <head> <meta charset="UTF-8"> <meta name="vi
重定向C库中stdio文件中的printf()函数,文件流-->;串口USART1
6.4 一些说明 数据属性可以重写同名的方法属性.这是为了避免在大型系统中产生问题的意外名称冲突.所以用一些减少冲突的常用方法是很有效果的.常用的方法包括:大写字母方法名称,用唯一的字符串来做为数据属性的名称(可以是个下划线_)或者用动词命名方法和用名字命名数据属性. 数据属性就像和对象的普通用户一样可以被方法引用.换句话说,类不能用来实现纯净的数据类型.事实上,在python中不能强制数据隐藏,一切基于约定.(另一方面,如C中写的,python的实现可以做到完全隐藏实现细节并且在必要是可以控制
JNI文件中命名类与JAVA文件中匹配
jni.c中注册中 int register_android_boa(JNIEnv *env){ jclass clazz; static const char* const kClassName = "com/lxl/ledClass"; //命名的类 /* look up the class */ clazz = (*env)->FindClass(env,kClassName); // clazz = env->FindClass(env,kCl
根据txt文件中指定的文件名进行文件分类
根据txt文件中指定的文件名进行文件分类: // 根据txt文件中指定的文件名进行文件分类 #include <stdio.h> #include <stdlib.h> #include <malloc.h> #include <windows.h> #include <io.h> #include <direct.h> #include <string.h> void Remove_End_Char(char a[])
怎样在log4j.xml配置文件中引入变量:小公司经验较多的我和阿里UC等大公司经验较多的Boss,一些技术交流和探讨
从最初学习使用log4j的时候,网上和书本上主要都是使用"log4j.properties"这种属性格式,配置日志.多年以来,一直使用这种格式,总的来说,简单.够用. 而有十多年经验的Boss,不建议使用properties格式配置,而是用xml格式配置.Boss之前在阿里(支付宝.淘宝).UC等大公司工作过. 我们有个很明显的不同: 我比较注重,简单.快速.Boss比较注重,规范.严谨. 我的观点:没有对与错,只有适用与不适用.每个人都是根据自己的经历和追求,做出的技术选择.