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をブロックするにはどうすればいいですか?
デモコード
(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ファイル内で定義されているからです.
現在開発されている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は定義されたフィルタの名前で、
(2)フィルタを定義し、web.xmlにURLをブロックする方法を指定する必要があります.url-pattern>の「/*」はワイルドカードで、フィルタがすべてのHTTP要求をブロックすることを示しています.基本的には他の形態には変更されません.開発中のHTTP要求はすべて一つのページで業務論理処理の要求である可能性があります.現在のところ、開発者は「/*」と書くだけでいいです.
(3)本セクションのコード例は、基本的なweb.xmlプロファイルStruts 2の内容である.実は