JavaWeb应用发布及相关配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb应用发布及相关配置相关的知识,希望对你有一定的参考价值。
一、组成结构
二、在Tomcat中发布Web应用
1.默认方式发布:将Web应用所有文件复制到Tomcat的<CATALINA_HOME>/webapps目录下,启动Tomcat服务器。
- 开放式目录结构应用:将整个Web应用目录复制到<CATALINA_HOME>/webapps目录下。
- Web应用打包文件:将Web应用打包为.war文件 jar cvf c:\\chapter03\\helloapp.war *.* 再将.war文件复制到<CATALINA_HOME>/webapps目录下。
2.Web组件URL
- html或JSP文件URL:eg. http://localhost:8080/helloapp/login.htm http://localhost:8080/helloapp/hello.jsp
- Servlet的URL:由web.xml文件的<url-pattern>指定。
<servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>mypack.DispatcherServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/dispatcher</url-pattern> </servlet-mapping>
-
- Tomcat查找Servlet类文件的步骤:
- 找到web.xml的<url-pattern>的值为/dispatcher的<servlet-mapping>元素
- 读取<servlet-mapping>元素的<servlet-name>子元素的值为dispatcher
- 找到<servlet-name>子元素值为dispatcher的<servlet>元素
- 读取<servlet>元素的<servlet-class>子元素的值为mypack.DispatcherServlet,即Servlet类名为mypack.DispatcherServlet
- 到<CATALINA_HOME>/webapps/helloapp/WEB_INF/classes/mypack目录查找DispatcherServlet.class文件
如图:
3.配置Tomcat的<Context>元素发布Web应用
<Context>元素代表了运行在虚拟主机<Host>上的单个Web应用
Tomcat 6.x配置<Context>几种途径:
- 到<CATALINA_HOME>/conf/context.xml文件中配置<Context>元素,该<Context>元素信息适用于所有Web应用
- 到<CATALINA_HOME>/conf/[enginename]/[hostname]/context.xml.default文件中配置<Context>元素,该<Context>元素信息适用于当前虚拟主机的所有Web应用
eg: <CATALINA_HOME>/conf/catalina/localhost/context.xml.default
- 到<CATALINA_HOME>/conf/[enginename]/[hostname]/[contextpath].xml文件中配置<Context>元素,[contextpath]表示单个Web应用的URL入口该<Context>元素只适用于单个Web应用
eg: <CATALINA_HOME>/conf/catalina/localhost/helloapp.xml
<Context path="/helloapp" docBase="C:\\chapter03\\helloapp" reloadable="true"/>
path:Web应用URL入口
docBase:helloapp应用文件路径C:\\chapter03\\helloapp
- 到Web应用的META-INF/context.xml文件中配置<Context>元素,该<Context>元素只适用于当前Web应用
<Context path="/helloapp" docBase="helloapp" reloadable="true"/>
path:Web应用URL入口
docBase:helloapp应用文件路径<CATALINA_HOME>/webapps/helloapp
- 到<CATALINA_HOME>/conf/server.xml文件中的<Host>元素中配置<Context>元素,该<Context>元素只适用于单个Web应用
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --> <!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --> <!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
<Context path="/helloapp" docBase="helloapp" reloadable="true"/> </Host>
4.配置Tomcat虚拟主机
步骤:
- 在<CATALINA_HOME>/conf/server.xml文件中的<Host>元素后面添加以下<Host>元素
<Host name="www.mycompany1.com" appBase="C:\\mycompany1" unpackWARs="true" autoDeploy="true"> <Alias>mycompany1.com</Alias> <Alias>mycompany1</Alias> </Host>
- 把helloapp应用复制到appBase指定的C:\\mycompany1目录下
- 在DNS服务器重注册虚拟主机名和别名,使他们的IP地址都指向Tomcat服务器所在主机,也可以通过修改C:\\Windows\\System32\\drivers\\etc文件夹下的hosts文件
# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost
127.0.0.1 www.mycompany1.com
- 重启Tomcat服务器,然后通过浏览器访问 http://www.mycompany1.com:8080/helloapp/login.htm
以上是关于JavaWeb应用发布及相关配置的主要内容,如果未能解决你的问题,请参考以下文章
Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段