对Tomcat部署web应用的方式总结,常见如下:
Tomcat自动部署
修改Server.xml文件部署
用UE或EditPlus打开Tomcat位于conf/server.xml的配置文件,找到以下内容:
< Host name ="localhost" debug ="0" appBase ="webapps" unpackWARs ="true" autoDeploy ="true" xmlValidation ="false" xmlNamespaceAware ="false" > ..... </ Host >
在Host之间添加如下内容:
< Context path ="/Mywebapps" reloadable ="true" docBase ="d:\Mywebapps" workDir ="d:\Mywebapps\emp" />
path:表示访问的路径;如上述例子中,访问该应用程序为:http://localhost:8080/Mywebapps
reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包
docbase:表示应用程序的地址,注意斜杠的方向“\”
workdir:表示缓存文件的放置地址
增加自定义context部署文件
在Tomcat安装目录conf\Catalina\localhost下,里面有Tomcat自带的三个应用,随意复制其中的一个XML文件,然后修改docbase指向你自己的应用程序,并把path改名,各参数参见上第三种方法。或者你也可以自己新建一个myapp.xml(注意此文件名将作为Context中的path,不管文件里的path怎么设置也无效),将以下内容复制过去,修改相应路径即可。
< Context path ="/test" docBase ="F:/J2EE/yazd_war_3_0" debug ="0" privileged ="true" reloadable ="true" > </ Context >
部署完毕后,通过http://localhost:8080/myapp 就可以访问。
通过Tomcat Web Application Manager部署web应用
登陆 tomcat 管理控制台: http://localhost:8080/ ,输入用户名和密码后便可管理应用并动态发布。
在 Context Path(option): 中输入 /myapp ,这代表你的应用的访问地址。
XML Configration file URL 中要指定一个 xml 文件,比如我们在 F:\ 下建立一个 hmcx.xml 文件,内容如下:
< Context reloadable ="false" />
其中 docBase 不用写了,因为在下一个文本框中填入。
或者更简单点,这个文本框什么都不填,在 WAR or Directory URL: 中键入 F:\hmcx 即可,然后点击 Deploy 按钮,上面就可以看到了 web 应用程序,名字就 Context Path(option): 中的名字myapp。
如果部署 .war 文件还有更加简单的方式,下面还有个 Select WAR file uploae 点击浏览选择 .war 文件,然后点击 Deploy 也可以。
web应用显示目录
tomcat默认访问项目,不会显示项目的文件和目录,项目开发期,很需要这个功能。
可以在web.xml文件中加入
< servlet > < servlet-name > default </ servlet-name > < servlet-class > org.apache.catalina.servlets.DefaultServlet </ servlet-class > < init-param > < param-name > debug </ param-name > < param-value > 0 </ param-value > </ init-param > < init-param > < param-name > listings </ param-name > < param-value > true </ param-value > </ init-param > < load-on-startup > 1 </ load-on-startup > </ servlet >
如果项目开发完成,准备部署在服务器上时,记住要把第三步中web.xml文件中参数listings的值改为false,这样可以避免把项目的部署路径呈现给使用者!
将listings的value改为true,然后重新启动tomcat,在输入url,测试成功!