1.Java Web 部署描述符web.xml

本文详细解析了web.xml文件的各个组成部分,包括文档头、文档类型、WEB应用图标及名称等,阐述了如何通过配置控制JavaWeb应用的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   --**No Longtop,No you.**-- 

   该阶段,我处在Java编程入门类,这个阶段需要快速的掌握Java基础语法和基本用法,宗旨就是“囫囵吞枣不求甚解”,先对Java熟悉起来再说。用很短的时间快速过一遍Java语法,连懵带猜多写写代码,要“知其然”。此阶段看的书是电子工业出版社的《开发者突击-Java Web》.本文大多数内容就是出自该书,非常感谢!

 

web.xml----Java Web应用的核心文件,它,通过各种命令参数的配置来控制整个应用的行为方式和方法。起真面目如下:

 

1.头元素:指定版本号和文字编码

<?xml version="1.0" encoding="ISO-8859-1"?>

 

2.文档类型

<!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>

 

3.WEB应用图标

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

 

4.WEB应用名称

<display-name>Tomcat Examples</display-name>

 

5.WEB应用描述

<description>Tomcat Examples</description>

 

6.分布式属性

<distributable/>

 

7.上下文参数

<context-param>
  <param-name>ContextParameter</param-name>
  <param-value>test</param-value>
  <description>It is a test parameter.</description>
</context-param>

 

8.过滤器定义

<filter>
  <filter-name>Set Character Encoding</filter-name>
  <filter-class>filter.SetCharaterEncoding</filter-class> 
  <init-param>
     <param-name>encoding</param-name>
     <param-value>EUC_JP</param-value>
  </init-param>
</filter>

 

9.过滤器映射

<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping> 

 

10监听器

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

 

11.SERVLET定义

<servlet>
<servlet-name>snoop</servlet-name>
<servlet-class>SnoopServlet</servlet-class>
<init-param>
    <param-name>fo</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>

 

12.SERVLET映射

<servlet-mapping>
 <servlet-name>snoop</servlet-name>
 <url-pattern>/snoop</url-pattern>
</servlet-mapping>

 

13.控制会话超时

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

 

14.MIME类型映射

<mime-mapping>
  <extension>htm</extension>
  <mime-type>text/html</mime-type>
</mime-mapping>

 

15.指定欢迎页面

<welcome-file-list>
 <welcome-file>index.jsp</welcome-file>
 <welcome-file>index.html</welcome-file>
 <welcome-file>index.htm</welcome-file>
</welcome-file-list>

 

16.错误处理页

<error-page>
   <error-code>404</error-code>
   <location>/NotFound.jsp</location>
</error-page>
<error-page>
   <exception-type>packageName.className</exception-type>
   <location>/SomeURL</location>
</error-page>

 

17.定位TLD

<taglib>
   <taglib-uri>http://jakarta.apache.org/tomcat/debug-taglib</taglib-uri>
   <taglib-location>/WEB-INF/jsp/debug-taglib.tld</taglib-location>
</taglib>

 

18.资源管理对象

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

 

19.资源工厂使用的资源

<resource-ref>
  <res-ref-name>mail/Session</res-ref-name>
  <res-type>javax.mail.Session</res-type>
  <res-auth>Container</res-auth>
</resource-ref>

 

20.安全限制

<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>role 1</role-name>
</auth-constraint>
</security-constraint>

 

21.登录验证

<login-config>
 <auth-method>FORM</auth-method>
 <realm-name>Example</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>


22.安全角色

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

 

23.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-name>
</env-entry>

 

24.EJB申明:

<ejb-ref>
  <description>Example EJB Reference</description>
  <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>

 

25.本地EJB申明:

<ejb-local-ref>
  <description>Example Local EJB Reference</description>
  <ejb-ref-name>ejb/ProcessOrder</ejb-ref-name>
  <ejb-ref-type>Session</ejb-ref-type>
  <local-home>com.mycompany.ProcessOrderHome</local-home>
  <local>com.mycmpany.mypackage.ProcessOrder</local>
</ejb-local-ref>

 

声明两个统一规则:

·XML元素大小写敏感;

·XML元素出现在其他元素中的次序敏感。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值