Java Web:Struts 2フレームワーク


フレームワーク処理要求プロセス
1.ブラウザ:送信要求2.サーバ:ブロッキングフィルタ要求3.サーバ:action処理要求呼び出し4.サーバ:action業務処理ガイド対応ページ5.サーバ:—応答要求
例:ページログイン
一、ブラウザ送信要求
<form action="login" method="post">
    :<input type="text" name=user><br>
    :<input type="password" name=password><br>
  <input type="submit" value="  ">
</form>

Action=「struts.xmlで構成する必要があるサーバが処理するActionクラスにコミット」
二、サーバーブロック要求
    <filter>
    <filter-name>struts2</filter-name>
      <filter-class>
        <!--   struts2 jar   StrutsPrepareAndExecuteFilter     -->
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
      </filter-class>
    </filter>

    <filter-mapping>
      <!--             -->
      <filter-name>struts2</filter-name>
      <url-pattern>/*</url-pattern>
    </filter-mapping>

三、actionクラスを呼び出す
1.struts.xmlはactionクラスを登録し、サーバに提出したactionの具体的なことを知らせ、actionクラスが返した結果に基づいて処理する
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
<!--    ,         -->
<package name="default" namespace="/" extends="struts-default">
  <!-- action    , struts2  action    :name    ,        action   ,class:      -->
  <action name="login" class="Action.login">
    <!-- action           result,  result     -->
    <result name="success">/succes.jsp</result>
    <result name="error">/error.jsp</result>
  </action>
</package>
</struts>

2.actionクラスの実装
package Action;
import com.opensymphony.xwork2.ActionSupport;
//     ActionSupport   ,  Struts2   Action  
public class login extends ActionSupport{
private static final long serialVersionUID = 1L;
//Action       ,                set     ,         get,set    
private String user;
private String password;
public String getUser() {return user;}
public void setUser(String user) {this.user = user;}
public String getPassword() {return password;}
public void setPassword(String password) {this.password = password;}
//  execute  ,             result   struts.xml 
public String execute()throws Exception {
    String ret = ERROR;
    //         ,  DAO                     
    if(user.equals("doge")&&password.equals("123456")){
        ret=SUCCESS;
        return ret;
    }else{
        return ret;
    }
}
}

コメント
1.stuts 2の起動に失敗した場合、Unable to locate configuration filesをエラーで報告することがあります.libをインポートしたjarパッケージのバージョンが古すぎる可能性があります.最新の公式サイトで提供されているjarパッケージを使用する必要があります.