tomcat查找类的过程:
把类文件放在:
D:/JspTry/one1/WEB-INF/classes下面,这个类必须是不带有包名的,如果有,要在classes下面建立相应的文件夹.注意上述的WEB-INF必须大写.
在Tomcat 6.0/conf/server.xml中:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="/Yi" docBase="D:/JspTry/one1" reloadable="true"/>
<!--这一条是自己添加的,这种条目在这份文件中可能已经有很多-->
<!--操作系统下的文件夹名字的大小写最好与这里一致,不过好像没关系-->
</Host>
在D:/JspTry/one1/WEB-INF/中放下面的叫做web.xml文件:
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app 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_4.xsd"
version="2.4">
<servlet>
<servlet-name>ZhengBanQiao</servlet-name>
<servlet-class>OutputInfo</servlet-class>
<!--上诉条目必须是类名-->
</servlet>
<servlet-mapping>
<servlet-name>ZhengBanQiao</servlet-name>
<!--这个郑板桥必须与上面的郑板桥一致-->
<url-pattern>/Yi_1</url-pattern>
</servlet-mapping>
</web-app>
然后在IE中可以用这种方式访问:
如果web.xml有写错的条目,比如把</servlet>写成了</servelet>,那么,即使以
http://localhost:8080/Yi/hi.html
访问D:/JspTry/one1/目录下的hi.html文件,也会提示找不到文件.
而这个hi.html文件跟类没有任何关系。由此可见,tomcat在用虚拟路径:
http://localhost:8080/Yi/
访问对应的实际目录:D:/JspTry/one1/
时,总要先读取web.xml文件的。