Struts 2 Hello Worldの例

Struts 2 Hello Worldの例

この例では、Struts 2でHello Worldの例を作成する方法を示します。

次のライブラリまたはツールが使用されます。

  • メーベン3

  • Eclipse 3.7

  • Struts 2.3.1.2

1. 最終プロジェクト構造

後のステップで迷子になった場合に備えて、このチュートリアルの最終プロジェクト構造を確認してください。

struts2 foder structure

2. Struts2の依存関係

Mavenを使用して、Struts2の依存関係全体をダウンロードします。 pom.xmlに「struts2-core」を追加します。

ファイル:pom.xml


    4.0.0
    com.example.common
    Struts2Example
    war
    com.example.common
    Struts2Example Maven Webapp
    http://maven.apache.org
    
        
            junit
            junit
            3.8.1
            test
        
        
            org.apache.struts
            struts2-core
            2.3.1.2
        
    
    
        Struts2Example
        
            
                maven-compiler-plugin
                2.3.2
                
                    1.6
                    1.6
                
            
        
    

3. Eclipseプロジェクトに変換する

コマンドプロンプトでEclipse Webプロジェクトにコンパイルして変換します。

mvn eclipse:eclipse -Dwtpversion=2.0

Eclipseの.classpathファイルを確認すると、次のStruts2依存関係がダウンロードされます。

ファイル:.classpath


  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

4. JSPビューページ

Struts 2タグを使用してユーザー名とパスワードの入力フィールドと送信ボタンを表示するJSPログインページ。

Fie:login.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>



    

Struts 2 Hello World Example

File : welcome_user.jsp –ユーザーにウェルカムメッセージを表示するJSPビューページ。

<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>



    

Struts 2 Hello World Example

Hello

Struts 1とStruts 2のどちらにも、非常によく似たUIタグ構文があり、HTML要素の命名の点で少し異なります。たとえば、

ストラット1

<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%>

   

ストラッツ2

<%@ taglib prefix="s" uri="/struts-tags" %>

    

5. アクション、すべてのビジネスロジックをここに配置

シンプルなStruts2 Actionクラス。内部ですべてのビジネスロジックを宣言するために使用されます。

ファイル:WelcomeUserAction.java

package com.example.user.action;

public class WelcomeUserAction{

    private String username;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    // all struts logic here
    public String execute() {

        return "SUCCESS";

    }
}

Struts2では、Actionクラスはインターフェイスを実装したり、クラスを拡張したりする必要はありませんが、execute()メソッドを作成してすべてのビジネスロジックを内部に配置し、ユーザーにリダイレクト先を指示する文字列値を返す必要があります。

Note
一部のユーザーがthe com.opensymphony.xwork2.Actionクラスを実装しているのを目にするかもしれませんが、com.opensymphony.xwork2.Actionはいくつかの便利な定数値のみを提供するため、これは完全にオプションです。

Note
org.apache.struts.action.Actionを拡張するには、Struts1のActionクラスが必要です。 ただし、Struts 2 Actionクラスはオプションですが、いくつかの便利な定数値に対してcom.opensymphony.xwork2.Actionを実装したり、いくつかの一般的なデフォルトのAction実装関数に対してcom.opensymphony.xwork2.ActionSupportを拡張したりすることができます。

5. Struts構成ファイル

すべてのものをリンクするStrut構成ファイル。 The xml file name must be “struts.xml”

ファイル:struts.xml





    
        
            pages/login.jsp
        
        
            pages/welcome_user.jsp
        
    

パッケージを宣言し、内部のアクションクラスをワープします。アクションクラスは自明ですが、次の新しいタグに興味があるかもしれません。

1. package name=”user”
単なるパッケージ名であり、実際には気にしないでください。

2. namespace=”/User”
「/ User」URLパターンを照合するために使用されます。 この記事を参照してください–Struts 2 namespace example and explanation

Note
実際、Struts2名前空間はStruts 1 multiple modulesと同等です。

3. extends=”struts-default”
これは、パッケージがstruts-defaultパッケージコンポーネントとインターセプターを拡張することを意味します。これは、struts2-core.jarファイルのルートにあるstruts-default.xmlファイルで宣言されています。

6. web.xml

Webアプリケーションデプロイメント記述子(web.xml)ファイルを構成して、Struts2をWebプロジェクトに統合します。

web.xmlファイル




    Struts 2 Web Application

    
        struts2
        
                org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
                
    

    
        struts2
        /*
    

7. それを実行します

Struts2では、action class directly with a suffix of .actionにアクセスできます。

struts2 hello world example1

struts2 hello world example2

ダウンロードしてください

ダウンロード–Struts2-Hello-World-Example.zip(7 KB)