`
静妙仙人
  • 浏览: 84082 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

在Tomcat中部署Java Web应用程序

阅读更多
从网上找了段关于在tomcat中部署java web的方法,放到这与大家分享。
在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。在下文中$CATALINA_HOME指的是Tomcat根目录。
一、静态部署
     静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署:
    1、将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了。这种方式比较简单,但是web应用程序必须在webapps目录下。访问地址如下:
http://localhost:8080/PetWeb/
   2、这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改$CATALINA_HOME\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标签,而是在$CATALINA_HOME\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文件,如果在$CATALINA_HOME\webapps\下没有该文件,你必须去重新下载tomcat,否则不能完成以下的功能。要想使用该管理程序必须首先编辑$CATALINA_HOME\conf\tomcat-users.xml文件,
上文且说到tomcat-users.xml文件,这个文件中的内容是不依赖于任何一个web应用程序,所以在任何一个web程序中都可以使用,如果这些用户和角色只对你的应用起作用,那么你完全可以放置在你自己的应用程序中,比如WEB-INF中.下面我们将上次加入到tomcat-users.xml文件中的内容,加入到我们在WEB-INF下新建的myUser.xml文件中,注意此文件应该是以<tomcat-users>为根目录,如下所示:
<tomcat-users>
  <!--定义角色-->
  <role rolename="suozhangshi"/>
  <role rolename="guahaoshi"/>
  <role rolename="danganshi"/>
  <!--定义用户,并加入到角色中-->
  <user username="gua1" password="gua1" roles="guahaoshi"/>
  <user username="gua2" password="gua2" roles="guahaoshi"/>
  <user username="dang1" password="dang1" roles="danganshi"/>
  <user username="dang2" password="dang2" roles="danganshi"/>
  <user username="suo1" password="suo1" roles="suozhangshi"/>
  <user username="suo2" password="suo2" roles="suozhangshi"/>
</tomcat-users>

    这个文件已经建立好了,那么怎么告诉Tomcat加载这个文件呢?我们通过下面这一种方式,在你的Web应用程序中的META-INF文件夹中加入Context.xml 文件,这样当此应用程序部署的时候,就会加载该文件的内容,内容如下:
<Context>
  <Realm className="org.apache.catalina.realm.MemoryRealm"
         pathname="webapps/SecurityWeb/WEB-INF/myUsers.xml" />
</Context>
    Realm标签中className属性定义了使用MemoryRealm类从pathname处加载xml文件。。还要注意这里的pathname它是以相对Tomcat根目录的,所以上文件路径应该从webapps开始。最后重新启动服务器再访问你程序,应该能够看到和上次相同的效果

分享到:
评论

相关推荐

    在Tomcat中部署JavaWeb应用

    详细地说明在Tomcat中部署JavaWeb应用

    Tomcat 与Java web开发技术详解(孙卫琴)

    主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方提供的实用软件(如Struts、Velocity和Log4J)的方法,以及Tomcat的各种高级功能。 书中内容注重理论与实践相...

    Tomcat与Java Web开发技术详解 孙卫琴 源码

    主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方提供的实用软件(如Struts、Velocity和Log4J)的方法,以及Tomcat的各种高级功能。 书中内容注重理论与实践相...

    tomcat与java web源代码

    本书详细介绍了在最新Tomcat 5版本上开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识,Java Web开发的高级技术,Tomcat与当前其他通用软件的集成,以及Tomcat的各种高级功能。 书中内容...

    在Tomcat部署和发布Web应用.ppt

    在Tomcat部署和发布Web应用.ppt 绝对经典。。。。。。

    Tomcat与Java Web开发技术详解(第2版).part1.rar

    主要内容包括:tomcat和java web开发的基础知识、java web开发的高级技术、在java web应用中运用第三方提供的实用软件(如struts、velocity和log4j)的方法,以及tomcat的各种高级功能。  书中内容注重理论与实践相...

    Tomcat与Java_Web开发技术详解3.pdf

    本书详细介绍了Tomcat 5 版本上开发 Java Web 应用的各种技术。主要包括:Tomcat和Java Web开发的...书中内容主要注重理论与实践相结合,列举了大量具有典型性和使用价值的Web应用实例,并提供了详细的开发和部署步骤。

    在Tomcat部署和发布Web应用

    在Tomcat部署和发布Web应用--很经典,适合初学者

    教学视频---在Tomcat中部署web程序的三种方法.rar

    教学视频---在Tomcat中部署web程序的三种方法.rar

    在Tomcat部署和发布Web应用.pps

    在Tomcat部署和发布Web应用.pps

    Tomcat与JavaWeb开发技术详解(第二版) 孙卫琴

    主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方提供的实用软件(如Struts、Velocity和Log4J)的方法,以及Tomcat的各种高级功能。 书中内容注重理论与实践相...

    使用InstallAnywhere打包JAVA WEB程序(jre+tomcat)

    文档描述了如何使用installanywhere 打包一个java web应用程序,文档步骤详尽,记录了从installanywhere安装破解到打包程序的创建及各种面板、处理的一些步骤。

    如何部署Java Web服务

    当基于Web的应用程序需要跨多个Web应用程序容器(如 IBM:registered: WebSphere:registered: Application Server、BEA WebLogic 和 Tomcat 等,这里仅指出三个)部署时,跨网络兼容性不够。对于Java Web服务,没有跨...

    Tomcat与Java Web开发技术详解 (14-26章源码)孙卫琴

    主要内容包括:Tomcat和Java Web开发的基础知识、Java Web开发的高级技术、在Java Web应用中运用第三方提供的实用软件(如Struts、Velocity和Log4J)的方法,以及Tomcat的各种高级功能。 书中内容注重理论与实践相...

    Tomcat与Java Web开发技术详解(第2版).part5.rar

    主要内容包括:tomcat和java web开发的基础知识、java web开发的高级技术、在java web应用中运用第三方提供的实用软件(如struts、velocity和log4j)的方法,以及tomcat的各种高级功能。  书中内容注重理论与实践相...

    Tomcat与Java Web开发技术详解(第2版).part3.rar

    主要内容包括:tomcat和java web开发的基础知识、java web开发的高级技术、在java web应用中运用第三方提供的实用软件(如struts、velocity和log4j)的方法,以及tomcat的各种高级功能。  书中内容注重理论与实践相...

    Tomcat与Java Web开发技术详解(第2版).part4.rar

    主要内容包括:tomcat和java web开发的基础知识、java web开发的高级技术、在java web应用中运用第三方提供的实用软件(如struts、velocity和log4j)的方法,以及tomcat的各种高级功能。  书中内容注重理论与实践相...

    tomcat下部署javaweb程序经验之谈

    对java web项目部署的经验浅谈,其中包括oracle、jdk、tomcat等环境的安装。

    Tomcat与Java Web开发技术详解(第2版).part2.rar

    本书详细介绍了在最新Tomcat 5版本上开发Java Web应用的各种技术。主要内容包括:Tomcat和Java Web开发的基础知识,Java Web开发的高级技术,Tomcat与当前其他通用软件的集成,以及Tomcat的各种高级功能。  书中...

Global site tag (gtag.js) - Google Analytics