TOMCAT的目录结构 1++ Tomact的一些小配置2++Java Web开发: Tomcat中部署项目的三种方法

TOMCAT的目录结构

/bin:存放windows或Linux平台上启动和关闭Tomcat的脚本文件
/conf:存放Tomcat服务器的各种全局配置文件,其中最重要的是server.xml和web.xml
/doc:存放Tomcat文档
/server:包含三个子目录:classes、lib和webapps
/server/lib:存放Tomcat服务器所需的各种JAR文件
/server/webapps:存放Tomcat自带的两个WEB应用admin应用和 manager应用
/common/lib:存放Tomcat服务器以及所有web应用都可以访问的jar文件
/shared/lib:存放所有web应用都可以访问的jar文件(但是不能被Tomcat服务器访问)
/logs:存放Tomcat执行时的日志文件
/src:存放Tomcat的源代码
/webapps:Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录

/work:存放JSP编译后产生的class文件

 

Tomact的一些小配置

标签: tomcatserver服务器jndi
  1216人阅读  评论(0)  收藏  举报

1、配置Tomact的名称

当一台服务器启动太多的Tomact的时候,需要区别Tomact的名称,可以给启动的Tomact添加一个标题。如下:

在Tomact的bin目录下找到catalina.bat文件,用记事本打开。在中间找到  if "%TITLE%" == "" set TITLE=

在set TITLE中敲入你命名的Tomact的名称,重启Tomact即可。

2、配置Tomact的内存

在catalina.bat的第一行增加: 

Java代码: set JAVA_OPTS=-server -Xms512m -Xmx2048m -XX:PermSize=64M -XX:MaxPermSize=512m -Djava.awt.headless=true

3、配置Tomact的虚拟文件路径

Tomact中配置虚拟文件路径(主要用于附件、图片等,前端直接使用虚拟路径访问附件、图片)

比如保存一张liuyuehu.jpg的图片,使用虚拟路径访问图片的配置:

在Tomact的localhost文件夹下面images.xml文件

<?xml version="1.0" encoding="UTF-8"?>

<Context path="images" reloadable="false" docBase="D:\cdc\images"></Context>、

重启Tomact后,在浏览器中输入:http://127.0.0.1:8080/images/liuyuehu.jpg访问成功!虚拟图片路径配置成功!

4、配置Tomact中项目路径

Tomact集群时,不会采取每个Tomact都加载一份独立的代码,而使用共享同一份代码。使用tomcat配置项目路径来共享同一份代码。便于实施人员更新代码。

比如:都加载D:\java\project的代码。项目的上下文为 project(项目的上下文要和Tomact的localhost文件夹下面的文件XXX.xml名称一致)

在Tomact的localhost文件夹下面project.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/Admin" docBase="D:\java\project" debug="0" reloadable="false" ></Context>

重启Tomact后,在浏览器中输入:http://127.0.0.1:8080/project访问成功!虚拟图片路径配置成功!

5、Tomact中并发配置的优化

在Tomcat 配置文件 server.xml 中的 <Connector ... /> 配置中。

参数的说明:

minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为 10

maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为 75

acceptCount:允许的最大连接数,应大于等于 maxProcessors ,默认值为 100

enableLookups:是否反查域名,取值为: true 或 false 。为了提高处理能力,应设置为 false

connectionTimeout:网络连接超时,单位:毫秒。设置为 0 表示永不超时,这样设置有隐患的。通常可设置为 30000 毫秒。

其中和最大连接数相关的参数为maxProcessors 和 acceptCount 。如果要加大并发连接数,应同时加大这两个参数。

web server允许的最大连接数还受制于操作系统的内核参数设置,通常 Windows 是 2000 个左右, Linux 是 1000 个左右。

更改后的配置

[html]  view plain  copy
  1. <Connector port="8085" protocol="HTTP/1.1"   
  2. maxHttpHeaderSize="8192"  
  3. minProcessors="10"  
  4. maxProcessors="100"  
  5. connectionTimeout="20000"   
  6. acceptCount="1000"  
  7. disableUploadTimeout="true"  
  8. redirectPort="8443" />  

6、 调整连接器connector的并发处理能力

Tomcat 配置文件server.xml 中的<Connector ... /> 配置中。

参数的说明:

maxThreads 客户请求最大线程数

minSpareThreads    Tomcat初始化时创建的socket 线程数

maxSpareThreads   Tomcat连接器的最大空闲socket 线程数

enableLookups     若设为true, 则支持域名解析,可把ip 地址解析为主机名

redirectPort       在需要基于安全通道的场合,把客户请求转发到基于SSL 的redirectPort 端口

acceptAccount      监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads  )

connectionTimeout   连接超时

minProcessors         服务器创建时的最小处理线程数

maxProcessors        服务器同时最大处理线程数

URIEncoding   URL统一编码

配置例子:

[html]  view plain  copy
  1. <Connector port="9027"     
  2.     protocol="HTTP/1.1"    
  3.     maxHttpHeaderSize="8192"    
  4.     maxThreads="1000"    
  5.     minSpareThreads="100"    
  6.     maxSpareThreads="1000"    
  7.     minProcessors="100"    
  8.     maxProcessors="1000"    
  9.     enableLookups="false"    
  10.     URIEncoding="utf-8"    
  11.     acceptCount="1000"      
  12.     redirectPort="8443"      
  13.     disableUploadTimeout="true"/>   

7、Tomact中的缓存处理

Tomcat 配置文件server.xml 中的<Connector ... /> 配置中。

参数介绍:

compression打开压缩功能  

compressionMinSize  启用压缩的输出内容大小,这里面默认为2KB

compressableMimeType压缩类型

connectionTimeout定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间

配置例子:

[html]  view plain  copy
  1. <Connector port="9027"     
  2.     protocol="HTTP/1.1"    
  3.     maxHttpHeaderSize="8192"    
  4.     maxThreads="1000"    
  5.     minSpareThreads="100"                      
  6.     maxSpareThreads="1000"                     
  7.     minProcessors="100"      
  8.     maxProcessors="1000"      
  9.     enableLookups="false"     
  10.     compression="on"    
  11.     compressionMinSize="2048"                   
  12.     compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"     
  13.     connectionTimeout="20000"      
  14.     URIEncoding="utf-8"                      
  15.     acceptCount="1000"                      
  16.     redirectPort="8443"      
  17.     disableUploadTimeout="true"/>  

8、Tomact中配置JNDI数据源

在localhost中新建一个XML文件。

[html]  view plain  copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!-- docBase是项目的源代码的路径也可以是部署包的路径  path和文件名一致,也就是项目的上下文-->  
  3. <Context path="/zjwtView" docBase="D:\eclipseWork\zjwtView\WebRoot" debug="0" reloadable="false" >  
  4.     <Resource name="jndi/view"  
  5.         auth="Container"  
  6.         type="javax.sql.DataSource"  
  7.         driverClassName="net.sourceforge.jtds.jdbc.Driver"  
  8.         url="jdbc:jtds:sqlserver://192.168.200.112:1433/cms_zhj_eabox"  
  9.         username="cms_zhj_eabox"  
  10.         password="p"  
  11.         maxActive="50"  
  12.         maxIdle="10"  
  13.         maxWait="10000"  
  14.         removeabandoned="true"  
  15.         removeabandonedtimeout="60"  
  16.         logabandoned="false"/>  
  17.     <ResourceLink global="UserDatabase" name="users" type="org.apache.catalina.UserDatabase"/>  
  18.     <Logger className="org.apache.catalina.logger.FileLogger" prefix="zjwtView-jndi." suffix=".log" timestamp="true"/>  
  19. </Context>  
在项目中web.xml中配置一下代码

[html]  view plain  copy
  1. <resource-ref>  
  2.         <res-ref-name>jndi/zjxfView</res-ref-name><!--jndi/zjxfView 就是localhost中文件的名称-->  
  3.         <res-type>javax.sql.DataSource</res-type>  
  4.         <res-auth>Container</res-auth>  
  5.         <res-sharing-scope>Shareable</res-sharing-scope>  
  6.    </resource-ref>  
 

Tomact配置域名

标签: Tomact域名服务器

总结一下Tomact中配置域名。

第一种方式:(个人认为是最简单,我经常使用的)

        第一步:建立一个空的web工程

第二步:在web工程中建立一个index.html

打开index.html。写入一下代码:

[html]  view plain  copy
  1. <html>  
  2.   <script type="text/javascript">  
  3.      window.location.href="http://www.liuyuehu.com/portal";  
  4.   </script>  
  5. </html>  

  第三步:修改一下Web.xml文件,如下:

[html]  view plain  copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.4"   
  3.     xmlns="http://java.sun.com/xml/ns/j2ee"   
  4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  5.     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   
  6.     http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">  
  7.   <welcome-file-list>  
  8.     <welcome-file>index.html</welcome-file>  
  9.   </welcome-file-list>  
  10. </web-app>  

第四步:在Tomact中的Server.xml中添加这个空项目的路径即可。修改如下:

添加一个<Context path="空项目的路径"  debug = "0" reloadbale="false"></Context>

[html]  view plain  copy
  1. <Host name="localhost"  appBase="webapps"  
  2.       unpackWARs="true" autoDeploy="true"  
  3.       xmlValidation="false" xmlNamespaceAware="false">  
  4.       <Context path="" docBase="D:\zjxfTomcat\zjxf" debug="0" reloadable="false" ></Context>  
  5. </Host>  

重启Tomact域名配置就生效了,是不是很简单。下面讲第二种配置方式。

第二种方式:

  1. 打开Tomcat安装目录下的/conf/server.xml文件
    为了方便将Tomcat的port改为80在server.xml中将原有的<Host name=“localhost“appBase=“webapps“ ……>修改为<Host name=“您要配置的域名(www.liuyuehu.com)“ appBase=“webapps“……>
  2. 在/conf/Catalina目录下建立目录“<liuyuehu.com>”,然后建立ROOT.xml文件,其格式和  /Catalina/localhost目录下的ROOT.xml一致,但是内容如下:
      <?xml version='1.0' encoding='utf-8'?>
               <Context displayName="Welcome to you!" docBase="D:/Tomcat 5./webapps/bayestore/jsp" path="">
      </Context>其中docBase中的内容就是你希望的打开您的域名(www.liuyuehu.com) 的时候映射到的目录和默认的网页(如:index.jsp)
  3. 启动Tomcat服务器,就可以直接敲入域名访问你要访问的地址了。
提供上述两种方式,认为哪种好就用哪种吧。我一般采用第一种方式,简单。

Java Web开发: Tomcat中部署项目的三种方法

时间: 2015-06-02 17:11:37      阅读: 386      评论: 0      收藏: 0       [点我收藏+]

标签:

web开发,在tomcat中部署项目的方法:

注意大小写

1、在conf目录中新建Catalina\localhost目录,在该目录中新建一个xml文件名字可以随意取,只要和当前文件中的文件名不重复就行了,改xml文件的内容为:

<Context path="/qxmobile"  docBase="/usr/local/webroot/qxmobile"

reloadable="false"  debug="0"

privileged="true" >

</Context>

xml的文件名必须和path的名字一致。

 

2、直接放到Webapps目录下

Tomact的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用。也可以将JSP程序打包成一个war包放在目录下,服务器会自动解开这个war包,并在这个目录下生成同名的文件夹,一个war包就是有特性格式的jar包,它是讲一个Web程序的所有内容进行压缩得到。具体如何打包,可以使用许多开发工具的IDE环境,如Eclipse、NetBeans、ant、JBuilder等。也可以用cmd

命令: jar -cvf applicationname.war package.*

    Webapps这个默认的应用目录也可以改变。打开Tomcat的conf目录下的server.xml文件,找打下面的内容:

<Host  name="localhost" appBase="webapps"

 unpackWARs="true" autoDeploy="true"  xmlValidation="false" xmlNamespaceAware="false">

将appBase修改即可.

3 . 在server.xml中指定

    在Tomcat的配置文件中,一个Web应用就是一个特定的Context, 可以通过在server.xml中新建Context里部署一个JSP应用程序。打开server.xml文件,在Host标签内建立一个Context,内容如下。

  在tomcat中的conf目录下,在server.xml中,<host/>节点中添加:

  <Context paht="/hello" docBase="" debug="0" privileged="true"></Context>

(1)path是虚拟路径;

path:是访问时的根地址,表示访问的路径;如上述例子中,访问该应用程序地址如下:http://localhost:8080/hello/

(2)docBase是应用程序的物理路径;

(3)workDir是这个应用的工作目录,存放运行时生成的这个应用相关的文件;

(4)debug 则是设定debug level, 0表示提供最少的信息,9表示提供最多的信息;

(5)privileged 设置为true的时候,才允许Tomcat的Web应用使用容器内的Servlet

(6)reloadable如果为true则tomcat会自动检测应用程序的/WEB-INF/lib  和 /WEB-INF/classes 目录的变化,自动装载新的应用程序,可以再不重启tomcat的情况下改变应用程序,实现热部署 antiResourseLocking 和 antiJARLocking 热部署是需要篇配置的参数,默认false避免更新了某个webapp,有时候Tomcat并不能把旧的webapp完全删除,通常会留下WEB-INF/lib下的某个jar包,必须关闭Tomcat才能删除,这就导致自动部署失败。设置为true,Tomcat在运行对应的webapp时,会把响应的源文件和jar文件复制到一个临时目录里。

这个方法可以定义别名,服务器端运行的项目名称为path, 外部访问的URL则使用XML的文件名。这个方法很方便的隐藏了项目的名称,对一些项目名称被固定不能更换,但外部访问时又想换个路径,非常有效。

注意: 删除一个Web应用同时也要删除webapps下相应的文件夹和server.xml中相应的Context,还要将Tomcat的conf\Catalinal\localhost目录下相应的xml文件删除,否则Tomcat仍会去配置并加载...

二 动态部署
登陆tomcat管理控制台:http://localhost:8080/,输入用户名和密码后便可管理应用并动态发布。
在Context Path(option):中输入/yourwebname ,这代表你的应用的访问地址。
XML Configration file URL中要指定一个xml文件,比如我们在F:\下建立一个hmcx.xml文件,内容如下: <Context reloadable="false" />其中docBase不用写了,因为在下一个文本框中填入。或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:\hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字。

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

 

以下来自豆瓣:http://www.douban.com/note/326314892/

tomcat部署web应用主要有以下几种方式:

1.拷贝你的WAR文件或者你的web应用文件夹(包括该web的所有内容)到$CATALINA_BASE/webapps目录下。
2.为你的web服务建立一个只包括context内容的XML片断文件,并把该文件放到$CATALINA_BASE/webapps目录下。这个web应用本身可以存储在硬盘上的任何地方。这种context片断提供了一种便利的方法来部署web应用,你不需要编辑server.xml,除非你想改变缺省的部署特性,安装一个新的web应用时不需要重启动Tomcat。
3.
同方法2,只是将context片断放在CATALINA_BASE\conf\Catalina\localhost目录下.这种方法比方法2>要有效,笔者经过多次实验发现方法2不如后面这种方法好用.前者多次出现系统打不开的情况.
4.直接在server.xml中</Host>前加上Context片断,使用这种方法时,tomcat会自动在CATALINA_BASE\conf\Catalina\localhost目录下生成一个文件片断.方法同方法3具有同样效果.这种方式需要将ROOT目录删除才行.


另外,为了让tomcat只运行conf/server.xml中指定的web应用,可以有以下几种办法:
实现一:
1)将要部署的WEB应用放在webapps以外的路径, 并在server.xml相应的context中的docBase指定.
2)删除webapps中的所有文件夹, 以及conf/catalina/localhost下所有xml文件.
注: webapps是server.xml中的Host元素的appBase属性的值. 
实现二:
1) 修改server.xml中Host元素的属性, 添加或修改: deployXML="false"
deployOnStartup="false" autoDeploy="false"
2) 含义:
deployXML="false": 不部署conf/catalina/localhost下的xml相应的WEB应用
deployOnStartup="false" : tomcat启动时, 不部署webapps下的所有web应用
autoDeploy="false": 避免tomcat在扫描改动时, 再次把webapps下的web应用给部署进来.



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值