Struts 2講義1


Struts 2をweb.xmlで構成し、WebプロジェクトStruts 2アプリケーションを実現します.
現在開発されているWebプロジェクトでは、web.xmlを使ってMVCフレームの応用を実現しています.Struts 2もMVCフレームに属するので、web.xmlには必ずStruts 2を配置してアプリケーションを実現します.
技術上のポイント
このセクションのコードはStruts 2の基本的な構成を説明します.
どうやってFilter Displatchフィルタをロードしますか?
Filter DisplatchフィルタでURLをブロックするにはどうすればいいですか?
デモコード
<!---------------------------------------   : web.xml-------------------------------->
<?xml version="1.0" encoding="GB2312"?>
<web-app xmlns=http://java.sun.com/xml/ns/j2ee
 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
 	version="2.4" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<filter>
		<!--       -->
		<filter-name>struts2</filter-name>
		<!--       struts2   -->
		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
	</filter>
	
	<filter-mapping>
		<!--         -->
		<filter-name>struts2</filter-name>
		<!--             -->
		<url-pattern>/*</url-pattern>
	</filter-mapping>
  	<welcome-file-list>
    	<welcome-file>index.jsp</welcome-file>
  	</welcome-file-list>
</web-app>
コード解釈
(1)Struts 1におけるweb.xmlのロードはいずれも一つのServletをロードしていますが、Struts 2においては、設計者がAOP(指向プログラミング)概念を実現するために、filterで実現しています.だからweb.xmlにロードされているのはStruts 2のFilter Displatch類です.filter-nameは定義されたフィルタの名前で、はStruts 2の中のそのFilterDisplatch類です.
(2)フィルタを定義し、web.xmlにURLをブロックする方法を指定する必要があります.url-pattern>の「/*」はワイルドカードで、フィルタがすべてのHTTP要求をブロックすることを示しています.基本的には他の形態には変更されません.開発中のHTTP要求はすべて一つのページで業務論理処理の要求である可能性があります.現在のところ、開発者は「/*」と書くだけでいいです.
(3)本セクションのコード例は、基本的なweb.xmlプロファイルStruts 2の内容である.実はなどフィルタ初期化パラメータを設定する設定があります.ここに具体的な説明がないのは、これらもstruts.propertiesファイル内で定義されているからです.