在这里我就不多说了 说一些基本要点 完成自动装配
首先看一下项目结构
这是实体类User
package cn.gh.entity; /** * Created by guo on 2017/10/22. */ public class User { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
然后是actionpackage cn.gh.action; import cn.gh.entity.User; import com.opensymphony.xwork2.Action; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ModelDriven; import com.opensymphony.xwork2.util.ValueStack; import java.util.Map; 因为实现了ModelDriver这个接口,所以我们可以直接自动装配实体类User的属性 public class UserAction implements Action,ModelDriven { private User user=new User(); public User getUser() { return user; } public void setUser(User user) { this.user = user; } public String execute() throws Exception { System.out.println(user.getUsername()+"======"); ActionContext context = ActionContext.getContext(); Map request = (Map) context.get("request"); /* Map session = (Map) context.get("session"); Map<String, Object> application = context.getApplication();*/ /*application.put("username",user.getUsername());*/ /* session.put("username",user.getUsername());*/ Map<String, Object> session = context.getSession(); session.put("username",user.getUsername()); ValueStack valueStack = context.getValueStack(); valueStack.push(session); return SUCCESS; } public User getModel() { return user; } }