`

Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署

 
阅读更多

在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。在下文中

  一、静态部署

  静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署:

  1、将PetWeb目录拷贝到\webapps下,然后启动服务器就可以了。这种方式比较简单,但是web应用程序必须在webapps目录下。访问地址如下:

  http://localhost:8080/PetWeb/

  2、这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改\conf\server.xml文件,在<host>标签内添加<Context>标签,内容如下:

  <Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/>

  其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。path属性的值是访问时的根地址。访问地址如下:http://localhost:8080/Pet/

  3、这种方式和第二种方式差不多,但是不是在Server.xml文件中添加Context标签,而是在\conf\Catalina\localhost中添加一个xml文件,如Pet.xml,内容如下:

  <Context docBase="F:/PetWeb" reloadable="false" />大家可能发现和第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。访问地址如下:http://localhost:8080/Pet/

  我们刚才是将PetWeb文件夹部署在了服务器中,我们知道可以将Web应用程序的内容打成.war包,然后在部署在服务器上。打包请参考如下步骤:

  1、打开命令提示符(Start-->Run-->cmd)

  2、设置jdk环境变量(如果我教过的学生不会配置,以后别说孙老师教过你)

  3、在命令提示符中进入F:\PetWeb文件后,键入如下命令:

  jar ..\Pet.war *.* 这样在F:\下应该有Pet.war文件。其中..表示当前目录的父目录。

  部署Pet.war文件非常简单,将刚才有docBase="F:\PetWeb"更改为docBase="F:\Pet.war"或者直接将其拷贝到webapps下也可以。重新启动服务器就可以将Pet.war部署为一个Web应用程序了。如果你够细心的话你会发现,服务器将Pet.war文件解开,并且在webapps下面又生成了一个Pet文件夹,然后把Pet.war的内容拷贝到里面去了。我们可以通过以下方式取消自动解压缩,配置方式如下:

  <Context docBase="F:/PetWeb" reloadable="false" unpackWAR="false"/>

  二、动态部署

  动态部署是指可以在服务器启动之后部署web应用程序,而不用重新启动服务器。动态部署要用到服务器提供的manager.war文件,如果在\webapps\下没有该文件,你必须去重新下载tomcat,否则不能完成以下的功能。要想使用该管理程序必须首先编辑\conf omcat-users.xml文件,内容如下:关于这个文件的更多内容,请参考Java Web应用程序的安全模型二

  <tomcat-users>

  <role rolename="tomcat"/>

  <role rolename="role1"/>

  <role rolename="manager"/>

  <user username="coresun" password="coresun" roles="manager"/>

  <user username="tomcat" password="tomcat" roles="tomcat"/>

  <user username="both" password="tomcat" roles="tomcat,role1"/>

  <user username="role1" password="tomcat" roles="role1"/>

  </tomcat-users>

  然后在浏览器中键入如下地址:

  http://localhost:8080/应该看到一个漂亮的加菲猫了吧。点击左边的Tomcat Manager链接,提示输入用户名和密码,本文都是coresun,然后可以看到以下页面:

  在Context Path(option):中输入/Pet

  XML Configration file URL中要指定一个.xml文件,比如我们在F:\下建立一个Pet.xml文件,内容如下:

  <Context reloadable="false" />docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填。

  在WAR or Directory URL:中键入F:\PetWet或者F:\Pet.war都可以,然后点击Deploy按钮,看看上面是不是已经看到了你web应用程序,名字就是你Context Path(option):中的名字。

  如果你部署.war文件还有更加简单的方式,下面还有个Select WAR file uploae点击浏览选择.war文件,然后点击Deploy也可以。

分享到:
评论

相关推荐

    Java-Web程序设计(PPT).pptx

    1.1.2 Web 应用程序的工作原理 Web 应用程序大致可以分为两种,即静态网站和动态网站。 静态网站采用Html语言编写,放置于 Web 服务器上,用户通过浏览器直接请求解析显示。 缺点:内容固定不变,改变显示必须修改...

    apache-tomcat-7.0.82

    这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要。在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要...

    超级有影响力霸气的Java面试题大全文档

    25、JSP中动态INCLUDE与静态INCLUDE的区别?  动态INCLUDE用jsp:include动作实现 &lt;jsp:include page="included.jsp" flush="true" /&gt;它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。 静态...

    java 面试题 总结

    22、JSP中动态INCLUDE与静态INCLUDE的区别? 动态INCLUDE用jsp:include动作实现 &lt;jsp:include page="included.jsp" flush="true" /&gt;它总是会检查所含文件中的变化,适合用于包含动态页面,并且可以带参数。 静态...

    基于J2EE框架的个人博客系统项目毕业设计论文(源码和论文)

    Tomcat是一个免费的开源的Serlvet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很...

    基于J2EE框架的个人博客系统项目毕业设计论...

    Tomcat是一个免费的开源的Serlvet容器,在Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很...

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    Servlet①技术和1JSP(JaLvaServer Pages)是利用Java语言开发Web/_立用程序的两种主要技术。Sun公司于1996年首次推出Servlet技术时,人们认为这种技术远优于当时占主导地位的公共网关接口(Common Gateway Inter。...

    restlet-jee-2.1.1.zip

    它甚至提供一个适配器(adapter),使你可以在标准Servlet容器(如Apache Tomcat)内部署一个Restlet应用。 Restlet还提供两个HTTP客户端连接器(HTTP client connector)。它们一个是基于官方的HttpURLConnection类...

    restlet-jse-2.1.1.zip

    它甚至提供一个适配器(adapter),使你可以在标准Servlet容器(如Apache Tomcat)内部署一个Restlet应用。 Restlet还提供两个HTTP客户端连接器(HTTP client connector)。它们一个是基于官方的HttpURLConnection类...

    基于SSM+mysql框架前后端分离的文件云平台项目源码+项目说明.zip

    以下示例两种运行方式。 ### 开发环境运行 - 后端 `/server` 1. `/src/resources/db.properties` 配置MySQL数据库连接信息 2. `/src/resoutces/app/easycloud.properties` 修改App配置(非必须) 3. 使用IDE...

    javapms门户网站源码

    Java是一种被广泛使用的网络编程语言,主要应用于企业、政府部门、电信、银行、手机平台开发等多个领域,是现在大型软件项目开发中的主角,长期占据《TIOBE世界编程语言排行榜》第一的宝座。随着Internet的发展,...

    开涛高可用高并发-亿级流量核心技术

    17.3.1 两种读服务架构模式 351 17.3.2 本地缓存 352 17.3.3 多级缓存 353 17.3.4 统一入口/服务闭环 354 17.4 引入Nginx接入层 354 17.4.1 数据校验/过滤逻辑前置 354 17.4.2 缓存前置 355 17.4.3 业务逻辑前置 355...

    JAVA核心知识点整理(有效)

    2.2.1. 程序计数器(线程私有) ................................................................................................................ 22 2.2.2. 虚拟机栈(线程私有) .................................

Global site tag (gtag.js) - Google Analytics