在劫

吾生也有涯,而知也无涯 。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

Tomcat配置环境变量:

1、JAVA的环境变量(JRE的也需要配置)
2、CATALINA_BASE、CATALINA_HOME、TOMCAT_HOME配置路径是TOMCAT的安装目录
3、TOMCAT启动和关闭是在bin目录下startup.bat和shutdown.bat文件,可以将bin目录配置到path下

TOMCAT端口占用的问题

方式一:
	命令:netstat -nano可以输出所有运行程序及占用端口号
	任务管理器结束掉占用该端口的程序

方式二:
	在配置文件中修改端口号
	tomcat/conf/server.xml文件中:
	    <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
	标签下的port属性就是端口号,修改这个属性值就可以修改端口号	

Tomcat的目录层次:

  • bin 存放启动和关闭Tomcat的脚本文件
  • conf 存放Tomcat服务器的各种配置文件
  • lib 存放Tomcat服务器的支撑jar包
  • logs 存放Tomcat的日志文件
  • temp 存放Tomcat运行时产生的临时文件
  • webapps web应用所在目录,即供外界访问的web资源存放目录
  • work Tomcat的工作目录,JSP会被翻译成Servlet文件,可以到这个文件夹中找源码

WEB应用程序指供浏览器访问的程序,通常也成为web应用。
一个web应用由多个静态web资源和动态web资源组成:

  • html、css、js文件
  • Jsp文件、java程序、支持jar包
  • 配置文件等等
  • 组成web应用的这些文件通常我们会使用一个目录组织,这个目录组织成为web应用所在目录

静态WEB资源只需要在webapps文件夹下建文件夹,文件夹内有网页文件,启动tomcat,就可以打开:

webapps文件夹下有hh文件夹下有h.html文件
启动tomcat,浏览器输入localhost:8080/hh/h.html就可以打开该文件

website
- - 存放html、css等文件

动态的WEB资源固定的目录:

website
- - WEB-INF
- - - web.xml 程序的入口,配置文件(必须有的,最好到其他文件夹中复制)
- - - classes 文件夹,名称固定,可选,放class文件
- - - lib 文件夹,名称固定,可选,放jar包	

web.xml文件:

<?xml version="1.0" encoding="ISO-8859-1"?>
	<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0" metadata-complete="true">
	<!-- ........ -->
</web-app>

Web应用开发好后,若想供外界访问,需要把web应用所在目录交给web服务器管理,这个过程称之为虚拟目录的映射。
虚拟路径(访问路径):

默认和项目名称相同(不要去修改)
WebRoot变成了虚拟路径(访问的路径)

直接复制项目,需要修改虚拟路径

项目上右键 -- 属性 --中修改

配置虚拟主机
在WEB服务器中配置一个网站,需要用Host元素进行配置,例如:

server.xml:
<Host name="www.sina.com" appBase="c:\sina">
 	<Alias>abc.com</Alias>    
	<Context path="/mail" docBase="c:\sina\mail"/>
</Host>
path=""代表缺省
这个里面的name表示的是访问本地的localhost地址,appBase表示项目指定的父位置,当前的webapps代表:TOMCAT_HOME/apache-tomcat7/webapps这个位置,这个位置也是tomcat的默认的存放javaEE项目位置
<Alias>abc.com</Alias>  表示第二域名,一个虚拟主机可以有多个域名
在Host节点下的Context节点,就是部署一个项目,但是这个项目不是在appBase目录下,他的路径在/www/html/helloTomcat这个目录下,path表示对外访问的名称,使用tomcat更灵活

配置主机要想被外界访问,必须在DNS服务器或windows系统中注册
在windows中配置

winwos目录下system32/drivers/etc/Hosts文件:
IP地址 域名

部署WEB程序的三种方式:
方式一:

项目复制到webapps文件中,如果是ecplise,可以将项目打包成war包。
启动Tomcat服务器,访问该文件会自动解压

方式二:

打开Tomcat下的conf/server.xml,在<host></host>标签之间输入项目配置文件:
	<Context path="..." docBase="..." reloadable="true" />
	path:浏览器访问时的路径名
  docBase:web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。其实也就是编译后的项目
  reloadble:设定项目有改动时,tomcat是否重新加载该项目

方式三:

1、进入到conf/Catalina/localhost目录,新建一个项目名.xml文件
2、在新建的xml文件中,增加配置语句:
	<Context  docBase="项目路径" reloadable="true" />

每个项目分开配置,tomcat 将以\conf\Catalina\localhost 目录下的 xml 文件的文件名作为 web 应用的上下文路径,而不再理会 <Context>中配置的 path 路径,因此在配置的时候,可以不写 path。	

web.xml的模式(Schema)文件中定义了多少种标签元素,web.xml中就可以出现它的模式文件所定义的标签元素,它就能拥有定义出来的那些功能:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
</web-app>

1、指定欢迎页面,例如:

<welcome-file-list>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>index1.jsp</welcome-file>
  </welcome-file-list>
这里配置了两个欢迎页面,依次查找

(1)为Servlet命名:

<servlet>
    <servlet-name>servlet1</servlet-name>
    <servlet-class>net.test.TestServlet</servlet-class>
</servlet>

(2)为Servlet定制URL

<servlet-mapping>
    <servlet-name>servlet1</servlet-name>
    <url-pattern>*.do</url-pattern>
</servlet-mapping>

3、定制初始化参数:可以定制servlet、JSP、Context的初始化参数,然后可以再servlet、JSP、Context中获取这些参数值。下面哪servlet来举例:

<servlet>
    <servlet-name>servlet1</servlet-name>
    <servlet-class>net.test.TestServlet</servlet-class>
    <init-param>
          <param-name>userName</param-name>
          <param-value>Tommy</param-value>
    </init-param>
    <init-param>
          <param-name>E-mail</param-name>
          <param-value>Tommy@163.com</param-value>
    </init-param>
</servlet>

然后在servlet中能够调用getServletConfig().getInitParameter("param1")获得参数名对应的值。
4、指定错误处理页面,可以通过“异常类型”或“错误码”来指定错误处理页面。

<error-page>
    <error-code>404</error-code>
    <location>/error404.jsp</location>
</error-page>
-----------------------------
<error-page>
    <exception-type>java.lang.Exception<exception-type>
    <location>/exception.jsp<location>
</error-page>

5、设置过滤器:比如设置一个编码过滤器,过滤所有资源

<filter>
    <filter-name>XXXCharaSetFilter</filter-name>
    <filter-class>net.test.CharSetFilter</filter-class>
</filter>
<filter-mapping>
   <filter-name>XXXCharaSetFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

6、设置监听器:

<listener>
<listener-class>net.test.XXXLisenet</listener-class>
</listener>

7、设置会话(Session)过期时间,其中时间以分钟为单位,假如设置60分钟超时:

<session-config>
<session-timeout>60</session-timeout>
</session-config>
posted on 2017-09-30 10:16  长嘴大耳怪  阅读(148)  评论(0编辑  收藏  举报