收藏 分销(赏)

关于web.xml配置文件记录.docx

上传人:二*** 文档编号:4705633 上传时间:2024-10-10 格式:DOCX 页数:15 大小:408KB
下载 相关 举报
关于web.xml配置文件记录.docx_第1页
第1页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、web.xml:1、web.xml学名叫部署描述符文件,是在Servlet规范中定义的,是web应用的配置文件。2、部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。所有部署描述符文件的顶层(根)元素为web-app。请注意,XML元素不像HTML,他们是大小写敏感的。因此,web-App和WEB-APP都是不合法

2、的,web-app必须用小写。3、web.xml中XML 元素不仅是大小写敏感的,而且它们还对出现在其他元素中的次序敏感。例如,XML头必须是文件中的第一项,DOCTYPE声明必须是第二项,而web- app元素必须是第三项。在web-app元素内,元素的次序也很重要。服务器不一定强制要求这种次序,但它们允许(实际上有些服务器就是这样做的)完全拒绝执行含有次序不正确的元素的Web应用。这表示使用非标准元素次序的web.xml文件是不可移植的。web.xml样例:!DOCTYPEweb-appPUBLIC-/SunMicrosystems,Inc./DTDWebApplication2.3/EN

3、元素标签详解:元素1:icon元素包含small-icon和large-icon两个子元素. 出IDE和GUI工具用来表示Web应用的一个和两个图像文件的位置。/路径/smallicon.gifsmall-icon元素应指向web站台中某个小图标的路径,大小为16 X 16 pixel,但是图象文件必须为GIF或JPEG格式,扩展名必须为:.gif或.jpg./路径/largeicon-jpglarge-icon元素应指向web站台中某个大图表路径,大小为32 X 32 pixel,但是图象文件必须为GIF或JPEG的格式,扩展名必须为; gif或jpg.范例 /images/small.gi

4、f /images/large.gif元素2、3:,定义访问web项目应用的名称。ip:端口/应用名/service/应用描述 对应用做出描述。范例test测试应用V1.0元素4:context-param元素用来设定web应用的环境参数(例如设定spring配置文件名称)包含两个子元素:param-name和param-value。参数名称 设定Context名称值 设定Context名称的值范例 param_name param_value此所设定的参数,在JSP网页中可以使用下列方法来取得:$initParam.param_name若在Servlet可以使用下列方法来获得:String

5、param_name=getServletContext().getInitParamter(param_name);元素5,6:,filter元素用来设定web应用的过滤器,它的两个主要子元素filter-name、filter-class、init-param用来定义Filter所对应的class和过滤器(filter)中的初始化方法(init)的参数Filter的名称 定义Filter的名称Filter的类名称 定义Filter的类路径和名称 encoding GBK 参数名称 参数值filter-mapping 元素的两个主要子元素filter-name和url-pattern.用来定

6、义Filter所对应的URL.Filter的名称 定义Filter的名称.URL Filter所对应的RUL.例如:/Filter/*范例 Encoding ghjf.test.filter.SetCharacterEncodingFilter encoding GBK Encoding /*元素7:在web应用启动时启动监听listener元素用来定义Listener接口,它的主要子元素为Listener的类名称定义Listener的类名称范例 org.springframework.web.context.ContextLoaderListener元素8、9:、servlet元素的两个主要

7、子元:servlet-name和servlet-class用来定义servlet所对应的java类servlet的名称 定义servlet的名称servlet的类名称 定义servlet的类名称和路径servlet-mapping元素包含两个子元素servlet-name和url-pattern.用来定义servlet所对应URL.Servlet的名称定义Servlet的名称.Servlet URL定义Servlet所对应的RUL.例如:/Servlet/*范例dwr-invokerDWR ServletDirect Web Remoter Servletuk.ltd.getahead.dwr

8、.DWRServlet debug truedwr-invoker/dwr/*元素10:session-config包含一个子元素session-timeout.定义web应用中的session参数.分钟定义这个web站台所有session的有效期限.单位为分钟.范例 30?元素11: mime-mapping包含两个子元素extension和mime-type.定义某一个扩展名和某一MIME Type做对映.扩展名名称 扩展名称MIME格式 MIME格式.范例 doc application/vnd.ms-word xls application/vnd.ms-excel ppt appli

9、cation/vnd.ms-powerpoint元素12:welcome-file-list包含一个子元素welcome-file.用来定义首页列单.用来指定首页文件名称welcome-file用来指定首页文件名称.我们可以用指定几个首页,而服务器会依照设定的顺序来找首页. index.jsp index.htm元素13:error-page元素包含三个子元素error-code,exception-type和location.将错误代码(Error Code)或异常(Exception)的种类对应到web应用资源路径.错误代码 :HTTP Error code,例如: 404、403Exce

10、ption:一个完整名称的Java异常类型/路径 在web应用内的相关资源路径,一般是静态页面路径范例 404 /error404.jsp java.lang.Exception /exception.jsp元素14:jsp-config元素主要用来设定JSP的相关配置,包括和两个子元素.其中元素在JSP 1.2时就已经存在了;而是JSP 2.0新增的元素.taglib元素包含两个子元素taglib-uri和taglib-location.用来设定JSP网页用到的Tag Library路径.:URItaglib-uri定义TLD文件的URI,JSP网页的taglib指令可以经由这个URI存取到

11、TLD文件./WEB-INF/lib/xxx.tld TLD文件对应Web站台的存放位置.jsp-property-group元素包含8个元素,分别为:Description此设定的说明Name此设定的名称URL 设定值所影响的范围,如:/CH2 或者/*.jsptrue|false 若为true,表示不支持EL语法.true|false若为true表示不支持语法.encoding设定JSP网页的编码.jspf设置JSP网页的抬头,扩展名为.jspf.jspf设置JSP网页的结尾,扩展名为.jspf范例 Taglib /WEB-INF/tlds/MyTaglib.tld Special pro

12、perty group for JSP Configuration JSP example. JSPConfiguration /* true GB2312 true?元素15:resource-env-ref有两个子元素:资源名资源的名称 相对java:comp/env 当web应用查找该资源的时候,返回的Java类名的全称范例 jdbc/mssql javax.sql.DataSource?元素16:resource-ref元素包括五个子元素description,res-ref-name,res-type,res-auth,res-sharing-scope.利用JNDI取得应用可利用资

13、源.说明资源说明资源名称资源名称资源种类资源种类Application|Container资源由Application或Container来许可Shareable|Unshareable资源是否可以共享.默认值为 Shareable范例 JNDI JDBC DataSource jdbc/data javax.sql.DataSoruce Container其他:struts2和sitemesh整合:Sitemesh和Struts2结合时要特别注意它们各自Filter的顺序,否则会导致双方都不能正常工作。而又由于Struts2在2.1.3之前使用的是FilterDispatcher,2.1.3

14、之后推荐使用StrutsPrepareFilter和StrutsExecuteFilter替代FilterDispatcher,因此配制上又会有所不同。2.1.3之前的版本,sitemesh的filter要介于StrutsPrepareFilter和FilterDispatcher之间,配制如下: struts-cleanup org.apache.struts2.dispatcher.ActionContextCleanUp struts-cleanup /* sitemesh com.opensymphony.module.sitemesh.filter.PageFilter siteme

15、sh /* struts org.apache.struts2.dispatcher.FilterDispatcher struts /* 2.1.3之后的版本,sitemesh的filter要介于StrutsPrepareFilter和StrutsExecuteFilter之间,配制如下: struts-cleanup org.apache.struts2.dispatcher.ActionContextCleanUp struts-cleanup /* struts-prepare org.apache.struts2.dispatcher.ng.filter.StrutsPrepareF

16、ilter struts-prepare /* sitemesh com.opensymphony.module.sitemesh.filter.PageFilter sitemesh /* struts-execute org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter struts-execute /* Sturts:详情还可参考struts.dtd文件解析:参考链接 struts.xml中的constant配置及其含义:元素1:利用include标签,可以将一个struts.xml配置文件分割成多个配置文件,然后在str

17、uts.xml中使用标签引入其他配置文件。元素2:Struts2框架有两个核心配置文件,其中struts.xml文件主要负责管理应用中的Action映射, 及Action处理结果和物理资源之间的映射关系。除此之外,Struts2框架还包含了一个struts.properties文件,该文件主义了Struts2框架的大量常量属性。但通常推荐也是在struts.xml文件中来配置这些常量属性。如:后面会讲到Struts2的国际化,它的资源文件位置就用常量属性来指定: .元素3:Struts2框架中核心组件就是Action、拦截器等,Struts2框架使用包来管理Action和拦截器等。每个包就是多

18、个Action、多个拦截器、多个拦截器引用的集合。在struts.xml文件中package元素用于定义包配置,每个package元素定义了一个包配置。它的常用属性有:name:必填属性,用来指定包的名字。extends:可选属性,用来指定该包继承其他包。继承其它包,可以继承其它包中的Action定义、拦截器定义等。namespace:可选属性,用来指定该包的命名空间。abstact:可选属性,设置为抽象包/success.jsp/error.jsp/success.jsp/error.jsp如上配置了两个包:default和my,配置my包时指定了该包的命名空间为/manage。对于包def

19、ault:没有指定namespace属性。如果某个包没有指定namespace属性,即该包使用默认的命名空间,默认的命名空间总是。对于包my:指定了命名空间/manage,则该包下所有的Action处理的URL应该是“命名空间/Action名”。如上名为backLogin的Action,它处理的URL为:http:/localhost:8080/userlogin_struts2/manage/backLogin.action元素4:如果没有指定method则默认执行Action中的execute方法。子标签: type类型: action返回结果对应name是自定义的 wildcard ma

20、ppings:在struts.xml文件中配置元素时,它的name、class、method属性都可支持通配符,这种通配符的方式是另一种形式的动态方法调用。当我们使用通配符定义Action的name属性时,相当于用一个元素action定义了多个逻辑Action:/success.jsp/error.jsp如上,定义一系列请求URL是user_*.action模式的逻辑Action。同时method属性值为一个表达式1,表示它的值是name属性值中第一个*的值。例如:用户请求URL为user_login.action时,将调用到UserAction类的login方法;用户请求URL为user_r

21、egist.action时,将调用到UserAction类的regist方法。动态方法调用:DMI:Dynamic Method Invocation 动态方法调用。动态方法调用是指:表单元素的action不直接等于某个Action的名字,而是以如下形式来指定对应的动作名:则用户的请求将提交到名为”userOpt”的Action实例,Action实例将调用名为”login”方法来处理请求。同时login方法的签名也是跟execute()一样,即为public String login() throws Exception。注意:要使用动态方法调用,必须设置Struts2允许动态方法调用,通过设置struts.enable.DynamicMethodInvocation常量来完成,该常量属性的默认值是true。元素5:与这两个标签都是用来配置发生异常时对应的视图信息的,只不过一个是Action范围的,一个是包范围的,当同一类型异常在两个范围都被配置时,Action范围的优先级要高于包范围的优先级.这两个标签包含的属性也是一样的/exception.jsp/success.jsp/error.jsp元素6: 该标签

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服