Struts Hello Worldの例
このチュートリアルでは、古典的な
Struts 1.3
フレームワークを使って世界のWebアプリケーションを開発する方法を紹介します。
使用されるツールと技術:
-
Struts 1.3.10
-
Maven 2.x
-
Eclipse 3.6
最終プロジェクトの構成
最初に最終的なフォルダ構造を見てみましょう。
1. Mavenテンプレート
Mavenコマンド ”
mvn archetype:generate
“を使用してクイックスタートのJavaプロジェクト構造を生成し、単純なJava Webプロジェクトテンプレートのテンプレート18を選択します。
Define value for groupId: : com.mkyong.common Define value for artifactId: : StrutsExample Define value for version: 1.0-SNAPSHOT: : Define value for package: com.mkyong.common: : com.mkyong.common ... [INFO]------------------------------------------------------------------------ [INFO]BUILD SUCCESSFUL [INFO]------------------------------------------------------------------------ [INFO]Total time: 1 minute 5 seconds [INFO]Finished at: Thu Apr 08 11:29:30 SGT 2010 [INFO]Final Memory: 8M/14M [INFO]------------------------------------------------------------------------
2. pom.xml file configuration
Add the Struts dependencies in pom.xml. In Struts 1.x, you need the
struts-core.jar
for core module and
struts-taglib.jar
for tag
library.
<project xmlns = "http://maven.apache.org/POM/4.0.0" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4__0__0.xsd "> <modelVersion> 4.0.0 </modelVersion> <groupId> com.mkyong.common </groupId> <artifactId> StrutsExample </artifactId> <パッケージング> war </パッケージ> <version> 1.0-SNAPSHOT </version> <name> StrutsExample Maven Webapp </name> <url> http://maven.apache.org </url> <依存関係> <依存関係> <groupId> junit </groupId> <artifactId> junit </artifactId> <version> 3.8.1 </version> <scope> test </scope> </dependency> <依存関係> <groupId> org.apache.struts </groupId> <artifactId> struts-core </artifactId> <version> 1.3.10 </version> </dependency> <依存関係> <groupId> org.apache.struts </groupId> <artifactId> struts-taglib </artifactId> <version> 1.3.10 </version> </dependency> </dependencies> <ビルド> <finalName> StrutsExample </finalName> </build> </project>
3. Eclipse IDE
このプロジェクトをMavenコマンドでEclipse Webプロジェクトに変換する ”
mvn
eclipse:eclipse -Dtpversion = 1.5
“となります。すべてのStruts依存ライブラリ
自動的にあなたのMavenローカルリポジトリにダウンロードし、それを
プロジェクトのクラスパスを作成し、EclipseのWebプロジェクトスタイルに変換します。
E:\ workspace \ struts \ StrutsExample> mvn eclipse:eclipse -Dwtpversion = 1.5[情報]プロジェクトのスキャン中... [INFO]Searching repository for plugin with prefix: 'eclipse'. [INFO]------------------------------------------------------------------------ [INFO]Building StrutsExample Maven Webapp
Just import it into Eclipse IDE.
4. Action Form
Create a Struts Action Form to hold the “hello world” data later.
パッケージcom.mkyong.common.form; import org.apache.struts.action.ActionForm; パブリッククラスHelloWorldFormはActionForm {String message; public String getMessage(){メッセージを返します。 } public void setMessage(文字列メッセージ){ this.message = message; } }
5.アクション(コントローラ)
Strutsアクション(アクションコントローラ)ファイルを作成してStrutsの動作を制御する
リクエストを転送します。
execute()
メソッドをあなたの
ここでは自分の論理。
パッケージcom.mkyong.common.action; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import com.mkyong.common.form.HelloWorldForm; パブリッククラスHelloWorldActionはAction { public ActionForward execute(ActionMappingマッピング、ActionFormフォーム、 HttpServletRequestリクエスト、HttpServletResponseレスポンス) 例外をスローする{ HelloWorldForm helloWorldForm =(HelloWorldForm)フォーム。 helloWorldForm.setMessage( "Hello World!Struts"); return mapping.findForward( "success"); } }
6. JSPビューページ
JSPページを作成し、Strutsタグを使用してアクションフォームオブジェクトにアクセスする
ライブラリに格納し、メッセージプロパティを出力します。
7. struts-config.xml
Create a
struts-config.xml
file for the Struts configuration details,
and put it into the
WEB-INF
folder.
<?xml version = "1.0" encoding = "UTF-8"?> <!DOCTYPE struts-config PUBLIC " - //Apache Software Foundation//DTD Struts設定1.3//EN" "http://jakarta.apache。 org/struts/dtds/struts-config__1__3.dtd "> <struts-config> <form-beans> <form-bean name = "helloWorldForm" type = "com.mkyong.common.form.HelloWorldForm"/> </form-beans> <action-mapping> <action path = "/helloWorld" type = "com.mkyong.common.action.HelloWorldAction" name = "helloWorldForm"> <forward name = "success" path = "/HelloWorld.jsp"/> <action-mapping>/action> </action-mappings> </struts-config>
”
helloWorldForm
“という名前のフォームBeanとアクションコントローラーを定義する
マッピング ”
HelloWorldAction
“は、
/helloWorld
ウェブパスと一致します
HelloWorldAction
。これは、
/helloWorld
webからのすべてのリクエストを意味します
パスは
HelloWorldAction
にリダイレクトされます。 「名前」属性は、
HelloWorldAction
に渡すアクション・フォームを定義します。
8. Webアプリケーションデプロイメント記述子
<!DOCTYPE web-app PUBLIC " - //Sun Microsystems、Inc.//DTD Webアプリケーション2.3//EN" "http://java.sun.com/dtd/web-app__2__3.dtd"> <servlet-name>アクション</servlet-name> <servlet-class> org.apache.struts.action.ActionServlet </servlet-name> </param-value> </param-name> </param-name> </param-name> </param-value> </servlet-name>アクション</servlet-name> <url-pattern> ** 。do </url-pattern> <servlet-name>/servlet-mapping> </web-app>
9. Java EEモジュールの依存関係(オプション)
Eclipse IDEでデバッグ作業を行いたい場合は、
Java EEモジュールの依存関係
がチェックされてEclipse
すべての依存関係を正しいフォルダに展開します。
リンク://maven/maven-dependency-libraries-not-deploy-in-eclipse-ide/[詳細はこちら]。
10.それを実行する
Eclipse IDEで、新しいサーバープラグインを作成して起動します。あなたはアクセスすることができます
この例は次のURLにあります。
HttpServletRequestクラスが見つかりません?
上記のエラーが発生した場合は、
javaee.jar
(exists
あなたのJDK/libフォルダにあります)。ライセンスの問題のため、この `javaee.jar`は
Mavenを使ってダウンロードするには、手動でそれを組み込む必要があります。
===ダウンロード
それをダウンロードする –
リンク://wp-content/uploads/2010/04/Struts-Hello-World-Example.zip[Struts-Hello-World-Example.zip]
===リファレンス