用户输入的信息一般action里获取值,如果想用把信息组装起来,可以另外建一个类(VO或DTO),然后在action里用模型驱动方法获取值。代码如下:acton如下: @Component("registerAction") @Scope("prototype") public class RegisterAction extends ActionSupport implements ModelDriven{
private UserInfo userInfo = new UserInfo(); //vo类
private RegisterService registerService;
public UserInfo getUserInfo() { return userInfo; } public void setUserInfo(UserInfo userInfo) { this.userInfo = userInfo; }
public RegisterService getRegisterService() { return registerService; } @Resource public void setRegisterService(RegisterService registerService) { this.registerService = registerService; }
@Override public String execute() throws Exception {
@Component("registerAction")
@Scope("prototype")
public class RegisterAction extends ActionSupport implements ModelDriven{
private UserInfo userInfo = new UserInfo(); //vo类
private RegisterService registerService;
public UserInfo getUserInfo() {
return userInfo;
} public void setUserInfo(UserInfo userInfo) {
this.userInfo = userInfo;
}
public RegisterService getRegisterService() {
return registerService;
} @Resource
public void setRegisterService(RegisterService registerService) {
this.registerService = registerService;
}
@Override
public String execute() throws Exception {
Map session = ActionContext.getContext().getSession();
User user = new User();
user.setUserName(userInfo.getUserName().trim());
user.setPassword(MD5.addDigest(userInfo.getPassword1().trim()));
user.setQq(userInfo.getQq().trim());
user.setWant(userInfo.getWant().trim());
user.setPhone(userInfo.getPhone().trim());
user.setEmail(userInfo.getEmail().trim());
user.setStoreAddress(userInfo.getStoreAddress().trim());
//检查是否同名
if(registerService.existByName(user)){
session.put("registerMsgName", "此用户名已存在"); //放进session,页面调用
return "userRegisterFail";
}
//检查是否存在相同e-mail
if(registerService.existByEmail(user)){
session.remove("registerMsgName");
session.put("registerMsgEmail", "Email已存在"); //放进session,页面调用
return "userRegisterFail";
}
session.remove("registerMsgEmail");
registerService.add(user); //添加
return "userRegisterSuccess";
} //modelDiven实现,把页面的值初始化UserInfo
public Object getModel() {
return userInfo;
}
}VO类如下:
public class UserInfo {
private int id;
private String userName;
private String password1;
private String password2;
private String qq;
private String want;
private String phone;
private String email;
private String storeAddress;
private int state;
private String superUserName;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
} public String getPassword1() {
return password1;
}
public void setPassword1(String password1) {
this.password1 = password1;
}
public String getPassword2() {
return password2;
}
public void setPassword2(String password2) {
this.password2 = password2;
}
public String getQq() {
return qq;
}
public void setQq(String qq) {
this.qq = qq;
} public String getWant() {
return want;
}
public void setWant(String want) {
this.want = want;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getStoreAddress() {
return storeAddress;
}
public void setStoreAddress(String storeAddress) {
this.storeAddress = storeAddress;
}
public int getState() {
return state;
}
public void setState(int state) {
this.state = state;
}
public String getSuperUserName() {
return superUserName;
}
public void setSuperUserName(String superUserName) {
this.superUserName = superUserName;
}
}希望能帮上忙!