tomcat服务器:

tomcat是一个WEB服务器,所有的j2ee WEB程序可以在此处运行。

tomcat服务器是一个符合j2ee标准的WEB服务器。则J2ee的EJB程序无法在此处运行。

如果要运行可以选择能够运行EJB程序的容器:Weblogic WebSphere(大型的web容器)。

bin目录:存放所有关闭或启动服务器的可执行文件。

conf目录:Tomcat配置的目录,所有与Tomcat配置有关的内容都在此文件下

server.xml:是Tomcat 服务器的配置文件。

work目录:存放jsp编译后的.class文件。

webapp目录:所有的WEB应用程序。

common/lib:存放所有需要的*.jar包。

web.xml常用元素配置:

<web-app>

<display-name></display-name>

定义了WEB应用的名字

<description></description>

声明WEB应用的描述信息

<context-param></context-param>

context-param     元素声明应用范围内的初始化参数。

<filter></filter>

过滤器元素将一个名字与一个实现javax.servlet.Filter接口的类相关联。

<filter-mapping></filter-mapping>

一旦命名了一个过滤器,就要利用filter-mapping元素把它与一个或多个servlet或JSP页面相关联。

<listener></listener>

servlet API的版本2.3增加了对事件监听程序的支持,事件监听程序在建立、修改和删除会话或servlet环境时得到通知。 Listener元素指出事件监听程序类。

<servlet></servlet>

在向servlet或JSP页面制定初始化参数或定制URL时,必须首先命名servlet或JSP页面。Servlet元素就是用来完成此项任务的。

<servlet-mapping></servlet-mapping>

服务器一般为servlet提供一个缺省的URL:

http://host/webAppPrefix/servlet/ServletName

常常会更改这个URL,以便servlet可以访问初始化参数或更容易地处理相对URL。在更改缺省URL时,使用servlet-mapping元素。

<session-config></session-config>

如果某个会话在一定时间内未被访问,服务器可以抛弃它以节省内存。 可通过使用HttpSession的setMaxInactiveInterval方法明确设置单个会话对象的超时值,或者可利用session-config元素制定缺省超时值。

<mime-mapping></mime-mapping>

如果Web应用具有想到特殊的文件,希望能保证给他们分配特定的MIME类型,则mime-mapping元素提供这种保证。

<welcome-file-list></welcome-file-list>

指示服务器在收到引用一个目录名而不是文件名的URL时,使用哪个文件。

<error-page></error-page>

在返回特定HTTP状态代码时,或者特定类型的异常被抛出时,能够制定将要显示的页面。

<taglib></taglib>

对标记库描述符文件(Tag Libraryu Descriptor file)指定别名。此功能使你能够更改TLD文件的位置, 而不用编辑使用这些文件的JSP页面。

<resource-env-ref></resource-env-ref>

声明与资源相关的一个管理对象。

<resource-ref></resource-ref>

声明一个资源工厂使用的外部资源。

<security-constraint></security-constraint>

制定应该保护的URL。它与login-config元素联合使用

<login-config></login-config>

指定服务器应该怎样给试图访问受保护页面的用户授权。它与sercurity-constraint元素联合使用。

<security-role></security-role>

给出安全角色的一个列表,这些角色将出现在servlet元素内的security-role-ref元素 的role-name子元素中。分别地声明角色可使高级IDE处理安全信息更为容易。

<env-entry></env-entry>

声明Web应用的环境项。

<ejb-ref></ejb-ref>

声明一个EJB的主目录的引用。

< ejb-local-ref></ ejb-local-ref>

声明一个EJB的本地主目录的应用。

</web-app>

相应元素配置

1、Web应用图标:指出IDE和GUI工具用来表示Web应用的大图标和小图标

<icon>

<small-icon>/images/app_small.gif</small-icon>

<large-icon>/images/app_large.gif</large-icon>

</icon>

2、Web 应用名称:提供GUI工具可能会用来标记这个特定的Web应用的一个名称

<display-name>Tomcat Example</display-name>

3、Web 应用描述: 给出于此相关的说明性文本

<disciption>Tomcat Example servlets and JSP pages.</disciption>

4、上下文参数:声明应用范围内的初始化参数。

<context-param>

<param-name>ContextParameter</para-name>

<param-value>test</param-value>

<description>It is a test parameter.</description>

</context-param>

在servlet里面可以通过getServletContext().getInitParameter("context/param")得到

5、过滤器配置:将一个名字与一个实现javaxs.servlet.Filter接口的类相关联。

<filter>

<filter-name>setCharacterEncoding</filter-name>

<filter-class>com.myTest.setCharacterEncodingFilter</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>GB2312</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>setCharacterEncoding</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

6、监听器配置

<listener>

<listerner-class>listener.SessionListener</listener-class>

</listener>

7、Servlet配置

基本配置

<servlet>

<servlet-name>snoop</servlet-name>

<servlet-class>SnoopServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>snoop</servlet-name>

<url-pattern>/snoop</url-pattern>

</servlet-mapping>

高级配置

<servlet>

<servlet-name>snoop</servlet-name>

<servlet-class>SnoopServlet</servlet-class>

<init-param>

<param-name>foo</param-name>

<param-value>bar</param-value>

</init-param>

<run-as>

<description>Security role for anonymous access</description>

<role-name>tomcat</role-name>

</run-as>

</servlet>

<servlet-mapping>

<servlet-name>snoop</servlet-name>

<url-pattern>/snoop</url-pattern>

</servlet-mapping>

元素说明

<servlet></servlet>

用来声明一个servlet的数据,主要有以下子元素:

<servlet-name></servlet-name> 指定servlet的名称

<servlet-class></servlet-class> 指定servlet的类名称

<jsp-file></jsp-file> 指定web站台中的某个JSP网页的完整路径

<init-param></init-param> 用来定义参数,可有多个init-param。在servlet类中通过getInitParamenter(String name)方法访问初始化参数

<load-on-startup></load-on-startup>

指定当Web应用启动时,装载Servlet的次序。

当值为正数或零时:Servlet容器先加载数值小的servlet,再依次加载其他数值大的servlet.

当值为负或未定义:Servlet容器将在Web客户首次访问这个servlet时加载它

<servlet-mapping></servlet-mapping> 用来定义servlet所对应的URL,包含两个子元素

<servlet-name></servlet-name> 指定servlet的名称

<url-pattern></url-pattern> 指定servlet所对应的URL

8、会话超时配置(单位为分钟)

<session-config>

<session-timeout>120</session-timeout>

</session-config>

9、MIME类型配置

<mime-mapping>

<extension>htm</extension>

<mime-type>text/html</mime-type>

</mime-mapping>

10、指定欢迎文件页配置

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

<welcome-file>index.html</welcome-file>

<welcome-file>index.htm</welcome-file>

</welcome-file-list>

11、配置错误页面

通过错误码来配置error-page

<error-page>

<error-code>404</error-code>

<location>/NotFound.jsp</location>

</error-page>

上面配置了当系统发生404错误时,跳转到错误处理页面NotFound.jsp。

通过异常的类型配置error-page

<error-page>

<exception-type>Java.lang.NullException</exception-type>

<location>/error.jsp</location>

</error-page>

上面配置了当系统发生java.lang.NullException(即空指针异常)时,跳转到错误处理页面error.jsp

12、TLD配置

<taglib>

<taglib-uri>http://jakarta.apache.org/tomcat/debug-taglib</taglib-uri>

<taglib-location>/WEB-INF/jsp/debug-taglib.tld</taglib-location>

</taglib>

如果MyEclipse一直在报错,应该把<taglib> 放到 <jsp-config>中

<jsp-config>

<taglib>

<taglib-uri>http://jakarta.apache.org/tomcat/debug-taglib</taglib-uri>

<taglib-location>/WEB-INF/pager-taglib.tld</taglib-location>

</taglib>

</jsp-config>

13、资源管理对象配置

<resource-env-ref>

<resource-env-ref-name>jms/StockQueue</resource-env-ref-name>

</resource-env-ref>

14、资源工厂配置

<resource-ref>

<res-ref-name>mail/Session</res-ref-name>

<res-type>javax.mail.Session</res-type>

<res-auth>Container</res-auth>

</resource-ref>

配置数据库连接池就可在此配置:

<resource-ref>

<description>JNDI JDBC DataSource of shop</description>

<res-ref-name>jdbc/sample_db</res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Container</res-auth>

</resource-ref>

15、安全限制配置

<security-constraint>

<display-name>Example Security Constraint</display-name>

<web-resource-collection>

<web-resource-name>Protected Area</web-resource-name>

<url-pattern>/jsp/security/protected/*</url-pattern>

<http-method>DELETE</http-method>

<http-method>GET</http-method>

<http-method>POST</http-method>

<http-method>PUT</http-method>

</web-resource-collection>

<auth-constraint>

<role-name>tomcat</role-name>

<role-name>role1</role-name>

</auth-constraint>

</security-constraint>

16、登陆验证配置

<login-config>

<auth-method>FORM</auth-method>

<realm-name>Example-Based Authentiation Area</realm-name>

<form-login-config>

<form-login-page>/jsp/security/protected/login.jsp</form-login-page>

<form-error-page>/jsp/security/protected/error.jsp</form-error-page>

</form-login-config>

</login-config>

17、安全角色:security-role元素给出安全角色的一个列表,这些角色将出现在servlet元素内的security-role-ref元素的role-name子元素中。

分别地声明角色可使高级IDE处理安全信息更为容易。

<security-role>

<role-name>tomcat</role-name>

</security-role>

18、Web环境参数:env-entry元素声明Web应用的环境项

<env-entry>

<env-entry-name>minExemptions</env-entry-name>

<env-entry-value>1</env-entry-value>

<env-entry-type>java.lang.Integer</env-entry-type>

</env-entry>

19、EJB 声明

<ejb-ref>

<description>Example EJB reference</decription>

<ejb-ref-name>ejb/Account</ejb-ref-name>

<ejb-ref-type>Entity</ejb-ref-type>

<home>com.mycompany.mypackage.AccountHome</home>

<remote>com.mycompany.mypackage.Account</remote>

</ejb-ref>

20、本地EJB声明

<ejb-local-ref>

<description>Example Loacal EJB reference</decription>

<ejb-ref-name>ejb/ProcessOrder</ejb-ref-name>

<ejb-ref-type>Session</ejb-ref-type>

<local-home>com.mycompany.mypackage.ProcessOrderHome</local-home>

<local>com.mycompany.mypackage.ProcessOrder</local>

</ejb-local-ref>

21、配置DWR

<servlet>

<servlet-name>dwr-invoker</servlet-name>

<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>dwr-invoker</servlet-name>

<url-pattern>/dwr/*</url-pattern>

</servlet-mapping>

22、配置Struts

<display-name>Struts Blank Application</display-name>

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>

org.apache.struts.action.ActionServlet

</servlet-class>

<init-param>

<param-name>detail</param-name>

<param-value>2</param-value>

</init-param>

<init-param>

<param-name>debug</param-name>

<param-value>2</param-value>

</init-param>

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>application</param-name>

<param-value>ApplicationResources</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

<!-- Struts Tag Library Descriptors -->

<taglib>

<taglib-uri>struts-bean</taglib-uri>

<taglib-location>/WEB-INF/tld/struts-bean.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>struts-html</taglib-uri>

<taglib-location>/WEB-INF/tld/struts-html.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>struts-nested</taglib-uri>

<taglib-location>/WEB-INF/tld/struts-nested.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>struts-logic</taglib-uri>

<taglib-location>/WEB-INF/tld/struts-logic.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>struts-tiles</taglib-uri>

<taglib-location>/WEB-INF/tld/struts-tiles.tld</taglib-location>

</taglib>

23、配置spring(基本上都是在Struts中配置的)

<!-- 指定spring配置文件位置 -->

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>

<!--加载多个spring配置文件 -->

/WEB-INF/applicationContext.xml, /WEB-INF/action-servlet.xml

</param-value>

</context-param>

<!-- 定义SPRING监听器,加载spring -->

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

<listener>

<listener-class>

org.springframework.web.context.request.RequestContextListener

</listener-class>

</listener>

^_^............分享是一种快乐!

web.xml常用元素配置的更多相关文章

  1. web.xml常用元素

    web.xml文件是用来初始化配置信息:比如welcome页面.servlet.servlet-mapping.filter.listener.启动加载级别等.当你的web工程没用到这些时,你可以不用 ...

  2. 关于JavaEE 开发中web.xml的主要配置及其使用

    web.xml 中的listener. filter.servlet 加载顺序及其详解 在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人 ...

  3. web.xml详细选项配置

    Web.xml常用元素 <web-app> <display-name></display-name>定义了WEB应用的名字 <description> ...

  4. 新建structs2 web应用及structs.xml常用基础配置

    建立一个structs2 web应用程序 1. 创建一个基本的web应用程序 2. 添加structs2的jar文件到Class Path 将structs2的最小jar包拷到WEB-INF/lib目 ...

  5. web.xml常用配置详解

    web.xml常用配置详解 context-param 指定 ServletContext(上下文) 配置文件路径,基本配置一般是Spring配置文件,或者是spring-security的配置文件. ...

  6. 史上最全web.xml配置文件元素详解

    一.web.xml配置文件常用元素及其意义预览 <web-app> <!--定义了WEB应用的名字--> <display-name></display-na ...

  7. web.xml常用标签整理(不定期更新)

    <?xml version="1.0" encoding="UTF-8"?><!-- 标明使用的XML版本和文档编码,此项必须位于第一行,之前 ...

  8. web.xml配置文件元素详解

    一.web.xml配置文件常用元素及其意义 1 <web-app> 2 3 <!--定义了WEB应用的名字--> 4 <display-name></disp ...

  9. javaWeb项目中Web.xml的基本配置

    这个地址写的非常好 ,欢迎大家访问 Å:http://www.cnblogs.com/hxsyl/p/3435412.html 一.理论准备 先说下我记得xml规则,必须有且只有一个根节点,大小写敏感 ...

随机推荐

  1. unity 内存中切割图片

    一般的说我们切割图片是将一张图片资源切割成更小的图片资源,也就是说在资源上就进行了切割,比如ugui上的切割方法. 如果我们有一些情况比如做拼图,可能让玩家自己选择自己的生活照作为拼图的原图. 那么我 ...

  2. inotify +rsync进行实时同步

    1.安装rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpmyum -y install ino ...

  3. IDEA创建maven项目使用命令打包遇到的问题及解决方法

    maven项目命令打包springboot项目 首先打开tomcat命令工具(如图所示):

  4. Linux系统安装之U盘引导

    折腾了一天,终于把系统安装上去了,心里那个苦啊. 参考:http://blog.csdn.net/avilifans/article/details/13768139 安装步骤如下: 第一步:Ultr ...

  5. coffeeScript中类的多态[学习篇]

    类的一大应用就是多态.多态是一个面向对象编程的高级术语----“一个东西可编程很多不同的东西,但不是任何东西”.[引自coffeescript深入浅出] class Shape constructor ...

  6. DBMS_OUTPUT in SQL Developer

    I fell sad for all the programmers(including) that has to SQL Developer as sql IDE. However, if you ...

  7. About SSDT BI

    Welcome to Microsoft Marketing Speak hell. With the 2012 release of SQL Server, the BIDS, Business I ...

  8. ARM-ContexM3/4组优先级和子优先级抢占规则

    多个中断源在它们的抢占式优先级相同的情况下,子优先级不论是否相同,如果某个中断已经在服务当中,则其它中断源都不能打断它:只有抢占式优先级高的中断才可以打断其它抢占式优先级低的中断. 就是说, 组优先级 ...

  9. android-23 View.java - dispatchTouchEvent源码

    public class View implements Drawable.Callback, KeyEvent.Callback, AccessibilityEventSource { /** * ...

  10. C++11实现生产者消费者问题

    生产者消费者问题是多线程并发中一个非常经典的问题.我在这里实现了一个基于C++11的,单生产者单消费者的版本,供大家参考. #include <windows.h> #include &l ...