`
s103y
  • 浏览: 116727 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

一个很详细的web.xml讲解

阅读更多

一个很详细的web.xml讲解

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" 
"http://java.sun.com/dtd/web-app_2_3.dtd"
> 
<web-app> 
<display-name>Sample Application</display-name> 
<description>This is a sample application</description> 
<filter> 
<!–过滤器名,可以随便取,当web应用中有多个过滤器时不允许重名.–> 
<filter-name>SampleFilter</filter-name> 
<!–具体的过滤器的类的完整的包名+类名。注意:不能写错了。否则容器不能正确的实例化过滤器–> 
<filter-class>mypack.SampleFilter</filter-class> 
<init-param> 
<!– 参数名 –> 
<param-name>initParam1</param-name> 
<!– 参数值 –> 
<param-value>2</param-value> 
</init-param> 
</filter> 
<!– Define the SampleFilter Mapping –> 
<filter-mapping> 
<!–过滤器名,注意要和上面的<filter-name>里的名字一样。–> 
<filter-name>SampleFilter</filter-name> 
<!– 指定过滤器负责过滤的URL。这里指定了*.jsp表示在访问任何一个jsp页面时都会先使用mypack.SampleFilter过滤器进行过滤。如果写成login.jsp.则只有在访问login.jsp时才会调用该过滤器进行过滤。–> 
<url-pattern>*.jsp</url-pattern> 
</filter-mapping> 
<servlet> 
<!– Servlet名字,可以随便取,有多个Servlet时不允许重名–> 
<servlet-name>SampleServlet</servlet-name> 
<!–指定实现这个Servlet的类。完整的包名+类名–> 
<servlet-class>mypack.SampleServlet</servlet-class> 
<!–定义Servlet的初始化参数(包括参数名和参数值)一个<servlet>元素里可以有多个<init-param>元素。在Servlet类中通过ServletConfig类的来访问这些参数。 
–> 
<init-param> 
<!– 参数名 –> 
<param-name>initParam1</param-name> 
<!– 参数值 –> 
<param-value>2</param-value> 
</init-param> 
<!–指定当前Web应用启动时装载Servlet的次序。当这个数>=0时,容器会按数值从小到大依次加载。如果数值<0或没有指定,容器将载Web客户首次访问这个Servlet时加载。–> 
<load-on-startup>1</load-on-startup> 
</servlet> 
<!– Define the SampleServlet Mapping –> 
<servlet-mapping> 
<!–必须和<servlet>里的<servlet-name>内容一样–> 
<servlet-name>SampleServlet</servlet-name> 
<!–指定访问这个Servlet的URL。这里给出的是对于整个Web应用的相对URL路径。–> 
<url-pattern>/sample</url-pattern> 
</servlet-mapping> 
<session-config> 
<!–设 定HttpSession的生命周期。这里以分钟计算。下面的设定指明Session在最长不活动时间为10分钟。过了这个时间,Servlet容器将它 作为无效处理。注意这里和程序里指定的计数单位不同,程序里是以秒为单位。<session-config>只有<session- timeout>这个元素–> 
<session-timeout>10</session-timeout> 
</session-config> 
<!— 配置会话侦听器,class表示一个HttpSessionListener或 HttpSessionActivationListener 或 HttpSessionAttributeListener或 HttpSessionBindingListener的实现类。该节点允许多个 –> 
<listener> 
<listener-class>com.cn.SessionListenerImpl</listener-class> 
</listener> 
<!– 在 用户访问Web应用时,如果仅给出Web应用的根访问URL,没有指定具体的文件名,容器会调用<weblcome-file- list> 元素里指定的文件清单。<welcome-file-list>里允许有多个<welcome-file>元 素,每个元素代表一个文件。容器会先找第一文文件件是否存在,如果存在这把这个文件返回个客户,不再进行其他文件的查找。如果不存在则找第二个文件,依次 类推。如果所有文件都不存在,则跑出404错误–> 
<welcome-file-list> 
<welcome-file>login.jsp</welcome-file> 
<welcome-file>index.htm</welcome-file> 
</welcome-file-list> 
<!– 设置Web应用引用的自定义标签库。下面的代码定义了一个/mytaglib标签库,它对应的TLD文件为/WEB-INF/mytaglib.tld –> 
<taglib> 
<taglib-uri>/mytaglib</taglib-uri> 
<taglib-location>/WEB-INF/mytaglib.tld</taglib-location> 
</taglib> 
<!– 如果Web应用访问了由Servlet容器管理的某个JNDI Resource必须在这里声明对JNDI Resource的引用 –> 
<resource-ref> 
<!– 对应用资源的说明 –> 
<description>DB Connection</description> 
<!– 指定所引用资源的JNDI名字 –> 
<res-ref-name>jdbc/sampleDb</res-ref-name> 
<!– 指定所引用资源的类名字 –> 
<res-type>javax.sql.DataSource</res-type> 
<!– 指定管理所引用资源的Manager, 它有两个可选值:Container和Application.Container表示由容器来创建和管理Resource,Application表示由Web应用来管理和创建Resource –> 
<res-auth>Container</res-auth> 
</resource-ref> 
<security-constraint> 
<web-resource-collection> 
<!– 这个名字是必须的,由工具使用,别的地方不使用 –> 
<web-resource-name>my application</web-resource-name> 
<!– 指定要受约束的资源,至少有一个。可以有多个. –> 
<uri-pattern>/*</uri-pattern> 
<!– 描 述了度可与URL模式指定的资源哪些方法是受约束的,如果没有<http-method>元素,表示任何角色的人都无法访问任何http的方 法  。这里放置了GET方法,表示只有GET方法是受约束的。其他任何角色的人可以访问POST和其他的方法。但不能访问GET方法。–> 
<http-method>GET</http-method> 
</web-resource-collection> 
<!– 如果没有<auth-constraint>表示所有角色都能访问GET方法,如果是<auth-constraint/>表示任何角色都不能访问GET方法 –> 
<auth-constraint> 
<!– 可选的。表示哪些角色能够在指定的资源上调用受约束的方法。这里表示只有拥有Admin和Member角色的人能够访问GET方法 
<security-role>>里的<role-name>值一样 
–> 
<role-name>Admin</role-name> 
<role-name>Member</role-name> 
</auth-constraint> 
</security-constraint> 
<!– 将指定的角色映射到web.xml里 –> 
<security-role> 
<description>The role that is required to log into the my Application 
</description> 
<!– 以下的角色和tomcat-users.xml里的<tomcat-users>里的<role rolename=""/>里的rolename属性值对应 –> 
<role-name>Guest</role-name> 
<role-name>Admin</role-name> 
<role-name>Member</role-name> 
</security-role> 
<!– 如果要想进行认证,必须有<login-config>–> 
<login-config> 
<!– 认证方式。有4种:BASIC:基本。 DIGEST:摘要。CLIENT-CERT:客户证书(能提供最高强度的认证)。FORM:表单 –> 
<auth-method>FORM</auth-method> 
<realm-name> 
Tomcat Servet Configuraton Form-Based Authentication Area 
</realm-name> 
<form-login-config> 
<form-login-page>/login.jsp</form-login-page> 
<form-error-page>/error.jsp</form-error-page> 
</form-login-config> 
</login-config> 
</web-app>

分享到:
评论

相关推荐

    WEB.XML详解

    WEB.xml详解主要涉及了Java EE Web应用程序的标准配置文件web.xml的详细使用说明,这是Servlet规范中定义的一个配置文件,用于配置web应用的初始化参数、servlet和filter、监听器等组件。 首先,web.xml文件在Web...

    log4j与web.xml的配置

    本文将详细讲解如何将Log4j整合到Web应用并通过web.xml进行配置,以实现日志信息的输出和管理。 1. **Log4j介绍** - Log4j由Apache软件基金会开发,提供了一种简单但功能强大的日志记录API,可以控制日志信息的...

    演示web.xml文件中error-page标签的使用.zip

    本示例文件"演示web.xml文件中error-page标签的使用.zip"包含了一个简单的演示,以帮助理解这个功能。 `&lt;error-page&gt;`标签允许开发者指定当特定的错误发生时显示哪个页面。这可以极大地提升用户体验,因为默认的...

    web.xml配置详细讲解

    web.xml 配置详细讲解 Web.xml 是一个部署描述符文件,用于控制 Web 应用的行为。它是 Web 应用程序的核心配置文件,定义了 Web 应用的结构和行为。 XML 头和根元素 一个合法的 Web.xml 文件必须以 XML 头开始,...

    sruts2.0 web.xml 配置文件

    首先,`web.xml`文件位于Web应用的`WEB-INF`目录下,它是一个XML格式的文档,遵循Java Servlet规范。在Struts2中,`web.xml`通常包含以下几个关键配置元素: 1. **欢迎页面(Welcome-file-list)**:定义当用户访问...

    java 导出Excel文件 网页方式打开 web.xml配置

    下面将详细讲解如何通过Java实现这个功能,并结合`web.xml`配置进行优化。 首先,Java导出Excel文件通常使用Apache POI库,这是一个强大的API,用于读写Microsoft Office格式的文件,包括Excel。以下是一个简单的...

    web.xml配置

    本文将详细讲解 web.xml 的配置信息。 头和根元素 在 web.xml 文件中,必须以一个 XML 头开始。这个头声明可以使用的 XML 版本并给出文件的字符编码。紧接着是 DOCTYPE 声明,它告诉服务器适用的 servlet 规范的...

    Apache Geronimo配置文件geronimo-web.xml各个标签的讲解

    虽然`geronimo-web.xml`是可选的,但在某些情况下,如需进行更详细的配置或定义特定服务器环境的设置时,这个文件就显得尤为重要。 ### Overview `geronimo-web.xml`的主要作用是将`web.xml`中声明的角色、EJB名、...

    springmvc、spring、mybatis的resources配置文件和web.xml

    这些框架的配置文件对于整个应用的运行至关重要,下面将详细讲解它们各自的资源配置以及与`web.xml`的关系。 1. **Spring框架配置** Spring框架的核心在于IoC(Inversion of Control)容器,它通过读取XML配置文件...

    springboot+mybatis+mysql+jsp+bootstrap+web.xml例子

    标题 "springboot+mybatis+mysql+jsp+bootstrap+web.xml例子" 描述了一个使用现代技术栈构建的Web应用程序示例。这个项目结合了Spring Boot、MyBatis、MySQL数据库、JSP(JavaServer Pages)以及Bootstrap前端框架,...

    Struts2手动搭建所有的jar包及相应的struts.xml和web.xml

    本教程将详细讲解如何手动搭建一个完整的Struts2环境,包括引入所有必要的jar包以及配置struts.xml和web.xml文件。 首先,我们需要准备Struts2的核心库。Struts2框架依赖于一系列的jar包,这些包包含了从控制器到...

    struts.xml文件详解.doc

    struts.properties文件是Struts 2框架的一个重要配置文件,它位于Web应用的WEB-INF/classes目录下或CLASSPATH路径下。这个文件定义了一系列框架的属性,允许开发者调整Struts 2的行为以适应特定的应用需求。例如,你...

    Tomcat的服务器配置文件server.xml讲解.pdf

    Tomcat是Apache组织下的一个开源Web应用服务器,它主要用于Java应用程序的发布和管理。server.xml是Tomcat最重要的配置文件,它定义了Tomcat服务器的主要结构。通过配置server.xml文件,我们可以对Tomcat进行自定义...

    Web后端开发-使用Filter过滤器技术,实现访问量统计-方法二使用web.xml配置的方式

    本篇文章将详细讲解如何通过使用`web.xml`配置文件来实现Filter过滤器,以实现对网站访问量的统计。这种方法是Java Web应用中的经典实践,适用于传统的基于Servlet的项目。 首先,我们需要了解Filter的基本概念。...

    dwr.xml文件的配置和入门使用

    dwr.xml 文件是 DWR 的核心配置文件,用于定义哪些 Java 类可以被远程访问和如何将 Java 对象转换为 JavaScript 对象本文将详细讲解 dwr.xml 文件的配置和入门使用。 在 dwr.xml 文件中, `&lt;allow&gt;` 标签用于定义...

    Pro.PHP.XML.and.Web.Services.2006

    这本书详细介绍了如何利用PHP这一强大的服务器端脚本语言,结合XML(可扩展标记语言)的灵活性和Web服务的开放性,构建高效、跨平台的应用程序。 XML,全称Extensible Markup Language,是一种数据交换格式,它允许...

    web.py教程

    web.py是python语言的一个web开发框架,本教程将对web.py的基本应用、提高应用、实用工具、模板、测试、用户输入、数据库、部署和子域名等方面进行讲解。 基本应用 1. Hello World!:展示如何使用web.py实现Hello ...

    ASP.NET.2.0.XML高级编程(第3版)

    总之,《ASP.NET 2.0 XML 高级编程(第3版)》全面覆盖了ASP.NET 2.0框架下XML的高级应用,对于希望深入理解并充分利用XML来提升Web应用性能的开发者来说,是一本不可多得的参考书。同时,提供的代码示例和实践指导...

Global site tag (gtag.js) - Google Analytics