首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Struts 基本配置詳解:web.xml 與 struts-config.xml 核心要素

     編輯:Java 程式設計入門

第一章 Struts 基本配置

1. 為 Struts 應用配置 web.xml

第一步:配置 ActionServlet

<servlet>
  <servlet-name>action</servlet-name>
  <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>action</servlet-name>
  <url-pattern>*.do</url-pattern>
</servlet-mapping>

注意:無論應用包含多少子模組,僅需配置一個 ActionServlet,因其支援多線程,且 Struts 僅允許單一實例。

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

<servlet>
  <servlet-name>action</servlet-name>
  <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
  <init-param>
    <param-name>config</param-name>
    <param-value>/WEB-INF/struts-config.xml</param-value>
  </init-param>
  <init-param>
    <param-name>debug</param-name>
    <param-value>0</param-value>
  </init-param>
  <init-param>
    <param-name>detail</param-name>
    <param-value>0</param-value>
  </init-param>
</servlet>
參數名含義/預設值
configStruts 配置檔相對路徑,預設 /WEB-INF/struts-config.xml
config/sub1子應用配置檔路徑,較少使用
debugServlet debug 層級,0 為最少日誌
detailDigester XML 解析 debug 層級,0 為最少日誌

第三步:配置歡迎檔案列表

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

因 <welcome-file-list> 不支援 Servlet 映射,無法直接指定 Action 為歡迎頁。變通方案:

  1. 在 struts-config.xml 定義全域轉向:<forward name="welcome" path="HelloWorld.do"/>
  2. 建立 welcome.jsp,內容為 <jsp:forward page="welcome.do"/> 或使用重導向。
  3. 在 web.xml 設定 welcome.jsp 為歡迎檔案。

第四步:配置錯誤處理

<error-page>
  <error-code>404</error-code>
  <location>/common/404.jsp</location>
</error-page>
<error-page>
  <error-code>500</error-code>
  <location>/common/500.jsp</location>
</error-page>
<error-page>
  <exception-type>java.io.IOException</exception-type>
  <location>/common/system_ioerror.jsp</location>
</error-page>

第五步:配置 Struts 標籤庫

<taglib>
  <taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>
  <taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>

2. Struts 配置文件 (struts-config.xml)

Struts 啟動時讀取配置檔,建立各組件。根元素 <struts-config> 包含 8 子元素,須嚴格遵循 DTD 定義順序:

<!ELEMENT struts-config (data-sources?, form-beans?, global-exceptions?, global-forwards?, action-mappings?, controller?, message-resources*, plug-in*)>

<data-sources> 元素

配置資料源,含多個 <data-source> 子元素,可用 <set-property> 設定屬性。配置後可在 Action 中透過 getDataSource(request) 取得連線:

DataSource ds = getDataSource(request);
Connection conn = ds.getConnection();

可宣告多資料源,各以唯一 key 識別。

<form-beans> 元素

配置多個 <form-bean>,屬性含 name、type(類全名)。動態 Form Bean 需額外配置 <form-property>:

<form-beans>
  <form-bean name="HelloForm" type="hello.HelloForm"/>
  <form-bean name="userForm" type="org.apache.struts.action.DynaActionForm">
    <form-property name="firstname" type="java.lang.String"/>
    <form-property name="lastname" type="java.lang.String"/>
    <form-property name="age" type="java.lang.Integer" initial="18"/>
  </form-bean>
</form-beans>

<global-exceptions> 元素

配置全域異常處理,映射 Java 異常至 org.apache.struts.action.ExceptionHandler 實作類。

<global-forwards> 元素

聲明全域轉向邏輯名對應實際 URI:

屬性說明
className轉向配置類,預設 org.apache.struts.action.ActionForward
name轉向邏輯名(必填)
path目標 URI,必以 / 開頭(必填)
redirecttrue=重導向,false=請求轉發
  • 首頁
  • 上一頁
  • 1
  • 2
  • 下一頁
  • 尾頁
  • 共 2 頁
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved