1. 程式人生 > >繼承ActionSupport例子

繼承ActionSupport例子

在Struts2中,Action可以不實現任何特殊的介面或者繼承特殊的類,僅僅是一個POJO(Plain Old Java Object,簡單的Java物件)就可以;也可以實現Xwork2中的Action介面;但是由於Xwork的Action介面非常簡單,為程式設計師提供的幫助有限,因此,在實際開發中,會更多的使用繼承ActionSupport類來實現Action的方式,如下所示:
1:首先要有搭建好的struts框架,新建一個控制層HelloWorldAction 類,
在這裡插入圖片描述
程式碼如下:
import com.opensymphony.xwork2.ActionSupport;

public class HelloWorldAction extends ActionSupport {
private String account;
private String password;
private String submitFlag;
public String execute() throws Exception {
this.businessExecute();
return “toWelcome”;
}
public void validate(){
if(account==null || account.trim().length()0){
this.addFieldError(“account”, “賬號不可以為空”);
}
if(password

null || password.trim().length()0){
this.addFieldError(“password”, “密碼不可以為空”);
}
if(password!=null && !"".equals(password.trim()) && password.trim().length()<6){
this.addFieldError(“password”, “密碼長度至少為6位”);
}
}
/**
* 示例方法,表示可以執行業務邏輯處理的方法,
*/
public void businessExecute(){
System.out.println("使用者輸入的引數為
="+“account=”+account+",password="+password+",submitFlag="+submitFlag);
}
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSubmitFlag() {
return submitFlag;
}
public void setSubmitFlag(String submitFlag) {
this.submitFlag = submitFlag;
}

}
2:然後配置struts.xml檔案,游標選中的檔案
在這裡插入圖片描述

程式碼如下:

<?xml version="1.0" encoding="UTF-8"?>
<struts>
    <package name="default" namespace="/" extends="struts-default">
       <action name="helloworldAction" class="com.hnpi.action.HelloWorldAction">  
        <result name="toWelcome">/welcome.jsp</result> 
         <result name="input">/login.jsp</result>   
    </action>  
       
    </package>
</struts>
3:新建login.jsp:

在這裡插入圖片描述
程式碼如下:
<%@ page language=“java” contentType=“text/html; charset=utf-8”
pageEncoding=“utf-8”%>
<%@ taglib prefix=“s” uri="/struts-tags"%>

Insert title here
賬號:
密碼: 這樣一個ActionSupport例子就做好了