萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> jsp編程 >> Structs中基本配置入門

Structs中基本配置入門

 

1、為Structs應用配置Web.xml文件

第一步:配置ActionServlet



 

<servlet>  <servlet-name>action</servlet-name>  <servlet-class>org.appache.  structs.ActionSer
vlet</servlet-class></servlet><servlet-mapping>   <servlet-name>action</servlet-name>   <uri-pa
ttern>*.do</url-pattern></servlet-mapping>



注意:不管應用中包含多少個子應用,都只需配置一個ActionServlet,因為ActionServlet支持多線程,目前的Structs框架只允許在應用中配置一個ActionServlet。

第二步:初始化參數對Servlet的運行環境進行初始化配置。

 

<servlet>   <servlet-name> action</servlet-name>   <servlet-class> org.appache.   structs.Actio
nServlet </servlet-class>   <init-param><param-name>config</param-name><param-value>/W
EB-INF/structs-config.xml</param-value></init-param> </servlet>



表2-1. Struts1.1中用到的初始化參數

 

參數名 含義/默認值 config 以相對路徑的方式指明 Struts應用程序 的配置文件位置。 如不設置,則默認值為/WEB-INF /struts-config.xml。 config/sub1 以相對路徑的方式指明子應用程序 的配置文件位置,一般來說, 很少用到子應用程序, 在此不多描述。 debug 設置Servlet的debug級別, 控制日志記錄的詳細程度。 默認為0, 記錄相對最少的日志信息。 detail 設置Digester的debug級別, Digester是Struts框架所使用的 用來解析xml配置文件的一個框架, 通過該設置,可以查看不同詳細 等級的解析日志。默認為0, 記錄相對最少的日志信息。



第三步:配置歡迎清單

當客戶訪問Web應用時,如果僅僅給出Web應用的Root URL,沒用指定具體的文件名,Web容器會自動調用Web應用的歡迎文件。

 

<welcome-file-list><welcome-file>welcome.jsp</welcome-file><welcome-file>index.jsp</welcom
e-file>  </welcome-fiel-list>



說明:

可以包含多個子元素,首先查找第一個文件。

由於元素中不能配置Servlet映射,因此不能直接把Structs的Action作為歡迎文件,可以采用一種變通的方法來實現在歡迎文件中調用Structs Action。

首先,在Structs配置文件中為被調用的Action創建一個全局的轉發項,例如:

 

<global-forwards>        <forward name=”welcome”   path=”HelloWord.do”/></global-forwords>



創建一個welcome.jsp的文件,最後在web.xml文件中把welcome.jsp文件配置為歡迎文件,代碼如下:

 

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



第四步:配置錯誤處理

 

<error-page>    <error-code>404</error-code>    <location>/commom/404.jsp</location></erro
r-page><error-page>    <error-code>505</error-code>    <location>/commom/505.jsp</locati
on></error-page>



也可以為Web容器捕獲的Java異常配置,需要設置子元素,它用於指定Java異常類。Web容器可能捕獲如下異常:RuntimeException或Error ServletException或它的子類,IOException或它的子類:

 

<error-page>    <exception-type>java.io.IOException </exception-type>    <location>/common/sy
stem_ioerror.jsp </location></error-page>



第五步:配置Structs標簽庫

使用客戶化的標簽庫,要配置它們:

 

<taglib>       <tag-uri>/WEB-INF/structs-html.tld    <tag-uri>       <taglib-location>    /WEB-INF/str
ucts-html.tld    </taglib-location>   </taglib>



用於指定標簽庫的相對或者絕對URI地址,Web應用根據這一URI來訪問標簽庫。

指定標簽描述文件在文件資源系統中的物理位置。

2、Structs配置文件

Structs框架在啟動時會讀入其配置文件,根據它來創建和配置各種Structs組件。

(1)元素

元素是Structs配置文件的根元素,元素有8個子元素。它的DTD定義如下:

<!ELEMENT structs-config(data-sources?,formbean?,global-exeception?,global-forward?,action-mapp
ing,controller?,message-resources*,plug-in*)>



在Struts配置中,必須按照以上的DTD指定的先後順序來配置元素的各個子元素,如果顛倒了這些元素的配置文件中的位置,在Structs應用啟動時會生成錯誤。

元素

元素包含零個、一個或者多個子元素,用於配置特定的數據源,它可以包含多個子元素,用於設置數據源的各種屬性。

配置了數據源後,就可以在Action類中訪問數據源,在org.apache.structs.action.Action類中定義了getDataSource(HttpRequrst)方法,它用於獲取數據源對象的引用。

 

DataSource  dataSource;   Connection  connection;       dataSource =getDataSource(request);       conn
ection=dataSource.getConnection();



也可以在配置文件中聲明多個數據源,此時需要為每一個數據源分配唯一的key值,通過改值來標識特定的數據源。

(2) 元素

元素用來配置多個ActionForm Bean, 包含多個子元素,,每個包含多個屬性,ClassName , name,type:

 

<form-beans>        <form-bean name="HelloForm"   type="hello.HelloForm"/></form-beans>



注意:配置動態ActionForm Bean,還必

copyright © 萬盛學電腦網 all rights reserved