package com.jereh.action;import java.util.Map;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport{
public void validate() {
if(!(this.name!=null&&!"".equals(this.name))){
this.addFieldError(name, "用户名不能为空!");
}
if(!(this.pwd!=null&&!"".equals(this.pwd))){
this.addFieldError(pwd, "密码不能为空!");
}
} private String name;
private String pwd;
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
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 String login(){
if((this.getName().equals("sa"))&&(this.getPwd().equals("123"))){
Map<String ,Object> session=ActionContext.getContext().getSession();//解耦
session.put("curUser", this.name);
HttpSession session1=ServletActionContext.getRequest().getSession();//耦合
session1.setAttribute("curName", this.name);
return "success";
}else{
return "fail";
}
}
public String addUser(){
String str="恭喜"+this.getName()+"注册成功!";
this.setMessage(str);
return "reg";
}
}
------------------------------------------
上面那段代码,做校验时,public void validate() {} 这样可以校验,可是在validate后加上login 校验 login方法时 就不能校验了 ,debug了一下 直接不走public void validatelogin() {},怎么回事呢?
import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport{
public void validate() {
if(!(this.name!=null&&!"".equals(this.name))){
this.addFieldError(name, "用户名不能为空!");
}
if(!(this.pwd!=null&&!"".equals(this.pwd))){
this.addFieldError(pwd, "密码不能为空!");
}
} private String name;
private String pwd;
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
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 String login(){
if((this.getName().equals("sa"))&&(this.getPwd().equals("123"))){
Map<String ,Object> session=ActionContext.getContext().getSession();//解耦
session.put("curUser", this.name);
HttpSession session1=ServletActionContext.getRequest().getSession();//耦合
session1.setAttribute("curName", this.name);
return "success";
}else{
return "fail";
}
}
public String addUser(){
String str="恭喜"+this.getName()+"注册成功!";
this.setMessage(str);
return "reg";
}
}
------------------------------------------
上面那段代码,做校验时,public void validate() {} 这样可以校验,可是在validate后加上login 校验 login方法时 就不能校验了 ,debug了一下 直接不走public void validatelogin() {},怎么回事呢?
解决方案 »
- 迷茫的感想,希望大能的你们给点意见.
- hibernate中, ManyToMany映射中, Set<Tag> tags = new HashSet<Tag>();如何使用
- 我想学WEB开发,需要学习哪些东西和使用哪些工具?
- 为什么alert没有效果呢?(JavaScript)
- 仿163网盘无刷新文件上传系统
- JSP 根据数据,显示不同的内容,eg:得到1 显示为“完成”
- JSP/WAP开发达人入,显示内容的问题
- 富客户端DWZ复制的项目中出现乱码
- 表单验证效果
- 最近会了一些JAVA SERVLET ,JAVA BEAN,可是做界面却不行?大家用什么做界面呀?
- 下拉框选择排序?在线等!拿分吧!
- jsp在服务器端保存xml文件,急~~求助~
改为:
public void validateLogin() {},
注意大小写呀。