自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

教你如何配置Struts2 web.xml文件

開發(fā) 后端
本文將對配置Struts2 web.xml文件進(jìn)行講解。其中包括Struts2介紹以及Struts2 web.xml文件的相關(guān)介紹。

Struts 2的基本配置

前面大致了解了Struts 2框架的基本內(nèi)容,但這些基本內(nèi)容都必須建立在Struts 2的配置文件基礎(chǔ)之上,這些配置文件的配置信息也是Struts 2應(yīng)用的核心部分。

配置Struts2 web.xml文件

任何MVC框架都需要與Web應(yīng)用整合,這就不得不借助于Struts2 web.xml文件,只有配置在Struts2 web.xml文件中Servlet才會被應(yīng)用加載。

通常,所有的MVC框架都需要Web應(yīng)用加載一個核心控制器,對于Struts 2框架而言,需要加載FilterDispatcher,只要Web應(yīng)用負(fù)責(zé)加載FilterDispatcher,F(xiàn)ilterDispatcher將會加載應(yīng)用的Struts 2框架。

因為Struts 2將核心控制器設(shè)計成Filter,而不是一個普通Servlet。故為了讓W(xué)eb應(yīng)用加載FilterDispacher,只需要在Struts2 web.xml文件中配置FilterDispatcher即可。

配置FilterDispatcher的代碼片段如下:

< !-- 配置Struts 2核心Filter的名字 -->struts< /FILTER-NAME>

< FILTER-CLASS>org.apache.struts2.dispatcher.FilterDispatcher < /FILTER-CLASS>
< INIT-PARAM>
< !-- 配置Struts 2框架默認(rèn)加載的Action包結(jié)構(gòu) -->
< PARAM-NAME>actionPackages< /PARAM-NAME>
< PARAM-VALUE>org.apache.struts2.showcase.person< /PARAM-VALUE>
< /INIT-PARAM>
< !-- 配置Struts 2框架的配置提供者類 -->
< INIT-PARAM>
< PARAM-NAME>configProviders < /PARAM-NAME>
< PARAM-VALUE>lee.MyConfigurationProvider< /PARAM-VALUE>
< /INIT-PARAM>
< /FILTER>   

正如上面看到的,當(dāng)配置Struts 2的FilterDispatcher類時,可以指定一系列的初始化參數(shù),為該Filter配置初始化參數(shù)時,其中有3個初始化參數(shù)有特殊意義:

config:該參數(shù)的值是一個以英文逗號(,)隔開的字符串,每個字符串都是一個XML配置文件的位置。Struts 2框架將自動加載該屬性指定的系列配置文件。

actionPackages:該參數(shù)的值也是一個以英文逗號(,)隔開的字符串,每個字符串都是一個包空間,Struts 2框架將掃描這些包空間下的Action類。

configProviders:如果用戶需要實現(xiàn)自己的ConfigurationProvider類,用戶可以提供一個或多個實現(xiàn)了ConfigurationProvider接口的類,然后將這些類的類名設(shè)置成該屬性的值,多個類名之間以英文逗號(,)隔開。

除此之外,還可在此處配置Struts 2常量,每個元素配置一個Struts 2常量,其中子元素指定了常量name,而子元素指定了常量value。

提示   關(guān)于Struts 2常量的講解,請參閱本書的4.1.2節(jié)。

在Struts2 web.xml文件中配置了該Filter,還需要配置該Filter攔截的URL。通常,我們讓該Filter攔截所有的用戶請求,因此使用通配符來配置該Filter攔截的URL。

下面是配置該Filter攔截URL的配置片段:

< !-- 配置Filter攔截的URL -->
< FILTER-MAPPING>
< !-- 配置Struts 2的核心FilterDispatcher攔截所有用戶請求 -->
< FILTER-NAME>struts< /FILTER-NAME>
/*< /URL-PATTERN>
< /FILTER-MAPPING>

配置了Struts 2的核心FilterDispatcher后,基本完成了Struts 2在web.xml文件中的配置。

如果Web應(yīng)用使用了Servlet 2.3以前的規(guī)范,因為Web應(yīng)用不會自動加載Struts 2框架的標(biāo)簽文件,因此必須在Struts2 web.xml文件中配置加載Struts 2標(biāo)簽庫。

配置加載Struts 2標(biāo)簽庫的配置片段如下:

< !-- 配置Struts 2標(biāo)簽庫的URI -->/s< /TAGLIB-URI>
< !-- 指定Struts 2標(biāo)簽庫定義文件的位置 -->
< TAGLIB-LOCATION>/WEB-INF/struts-tags.tld< /TAGLIB-LOCATION>
< /TAGLIB> 

在上面配置片段中,指定了Struts 2標(biāo)簽庫配置文件物理位置:/WEB-INF/struts- tags.tld,因此我們必須手動復(fù)制Struts 2的標(biāo)簽庫定義文件,將該文件放置在Web應(yīng)用的WEB-INF路徑下。

如果Web應(yīng)用使用Servlet 2.4以上的規(guī)范,則無需在Struts2 web.xml文件中配置標(biāo)簽庫定義,因為Servlet 2.4規(guī)范會自動加載標(biāo)簽庫定義文件。

提示   Struts 2的標(biāo)簽庫定義文件包含在struts2-core-2.0.6.jar文件里,在struts2-core-2.0.6.jar文件的META-INF路徑下,包含了一個struts-tag.tld文件,這個文件就是Struts 2的標(biāo)簽庫定義文件,Servlet 2.4規(guī)范會自動加載該標(biāo)簽庫文件。
對于Servlet 2.4以上的規(guī)范,Web應(yīng)用自動加載該標(biāo)簽庫定義文件。加載struts-tag.tld標(biāo)簽庫定義文件時,該文件的開始部分包含如下代碼片段:

< TAGLIB>
< !-- 定義標(biāo)簽庫的版本 -->
< TLIB-VERSION>2.2.3< /TLIB-VERSION>
< !-- 定義標(biāo)簽庫所需的JSP版 -->
< JSP-VERSION>1.2< /JSP-VERSION>
< SHORT-NAME>s< /SHORT-NAME>

/struts-tags< /URI>
...
< /TAGLIB>

因為該文件中已經(jīng)定義了該標(biāo)簽庫的URI:struts-tags,這就避免了在Struts2 web.xml文件中重新定義Struts 2標(biāo)簽庫文件的URI。

【編輯推薦】

  1. 在Eclipse中開發(fā)struts應(yīng)用程序
  2. 手把手教你在Eclipse中配置開發(fā)Struts
  3. Eclipse下開發(fā)struts完整解決亂碼問題
  4. Struts相關(guān)背景介紹
  5. 使用Easy Struts for Eclipse開發(fā)Struts
責(zé)任編輯:張燕妮 來源: 百度空間
相關(guān)推薦

2009-06-04 08:34:24

Struts2配置struts.xml

2009-06-25 15:26:25

Struts2教程struts.xml常

2009-02-04 11:37:15

2009-06-05 10:52:45

struts2深入詳解配置文件

2009-06-05 09:40:59

2009-07-07 14:27:32

Servlet配置web.xml

2009-07-14 14:08:35

Tapestry 5.web.xml的配置

2009-07-29 09:54:34

struts2和str

2009-06-26 17:27:15

JSF文件

2009-06-25 15:50:03

Struts2教程上傳任意多個文件

2009-06-05 10:09:13

struts配置

2009-02-04 10:51:07

2009-06-25 15:11:28

Struts2教程Struts2程序

2009-06-04 09:41:50

struts2上傳文件

2009-02-04 14:00:59

2009-07-03 09:35:57

Struts2 JSP

2012-08-30 09:48:02

Struts2Java

2009-06-03 14:19:34

Struts2Guice

2009-06-04 09:20:19

struts2 if標(biāo)使用

2009-07-14 17:10:44

struts2webwork
點贊
收藏

51CTO技術(shù)棧公眾號