struts2框架----第三天

                        struts2的處理方式和action實現方式

   1.屬性驅動

         jsp頁面:

 <form action="register" method="post"> 
  	用戶名:<input type="text" name="name" /><br> 
  	密碼:<input type="password" name="pwd" /><br> 
  	年齡:<input type="text" name="age" /><br> 
  	郵箱:<input type="text" name="email" /><br> 
  	<input type="submit" value="提交" /> 
  </form>

     action代碼:

public class Login extends ActionSupport{
	private String name;
	private String pwd;
	
	
	@Override
	public String execute() throws Exception {
		if ("admin".equals(name)&&"123".equals(pwd)) {
			return "success";
		} else {
			return "fail";
		}
	}
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	
}

 

   2.對驅動象

        jsp頁面:

<form action="register" method="post"> 
  	用戶名:<input type="text" name="user.name" /><br> 
  	密碼:<input type="password" name="user.pwd" /><br> 
  	年齡:<input type="text" name="user.age" /><br> 
  	郵箱:<input type="text" name="user.email" /><br> 
  	<input type="submit" value="提交" /> 
  </form>

       action類:

public class Login extends ActionSupport{
	private User user; //註冊
	public String register(){
		System.out.println(user); 
		return SUCCESS; 
		}
	public User getUser() { 
		return user; 
		}
	public void setUser(User user) { 
		this.user = user; 
		} 
	}

       userBean類:

public class User { 
	private String name; 
	private String pwd; 
	private int age; 
	private String email;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	} 
}

   3.模式驅動 

         jsp頁面:

 <form action="register" method="post"> 
  	用戶名:<input type="text" name="name" /><br> 
  	密碼:<input type="password" name="pwd" /><br> 
  	年齡:<input type="text" name="age" /><br> 
  	郵箱:<input type="text" name="email" /><br> 
  	<input type="submit" value="提交" /> 
  </form>

       action:

import com.opensymphony.xwork2.ModelDriven;

public class Login extends ActionSupport{
	public class UserDrivenAction implements ModelDriven<User>{
		private User user = new User(); //註冊 
		public String register(){ 
			System.out.println(user); 
			return SUCCESS; 
			}
		public User getModel() { 
			return user; 
			}
		public User getUser() { 
			return user; 
			}public void setUser(User user) { 
				this.user = user; 
				} 
			}
		}

    uesrBean類:

public class User { 
	private String name; 
	private String pwd; 
	private int age; 
	private String email;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPwd() {
		return pwd;
	}
	public void setPwd(String pwd) {
		this.pwd = pwd;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	} 
}

4.定義一個pojo類

     好處:自定義一個普通的 java 類即可,不具有侵入型

public class PojoAction { 
    public String execute(){ 
    System.out.println("pojo action"); 
    return "success"; 
    }
}

5.實現Action接口

     好處:使得我們編寫的代碼更加規範

public class InterfaceAction implements Action{ 
    public String execute() throws Exception { 
        System.out.println("interface action");
        return SUCCESS; 
    } 
}

6.繼承ActionSupport類

          好處:可以繼承一些 ActionSuport 實現功能,如:驗證;官方推薦使用

public class ExtendsAction extends ActionSupport{ 
    @Override 
    public String execute() throws Exception { 
        System.out.println("extends action"); 
        return SUCCESS; 
    } 
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章