struts2.3.20中action中的validate校验


public class RegisterAction extends ActionSupport

{

private String username;

private String password;

private String repassword;

private int age;

private Date birthday;

private Date graduation;

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;

}

public String getRepassword()

{

return repassword;

}

public void setRepassword(String repassword)

{

this.repassword = repassword;

}

public int getAge()

{

return age;

}

public void setAge(int age)

{

this.age = age;

}

public Date getBirthday()

{

return birthday;

}

public void setBirthday(Date birthday)

{

this.birthday = birthday;

}

public Date getGraduation()

{

return graduation;

}

public void setGraduation(Date graduation)

{

this.graduation = graduation;

}

//execute(),只要校验方法有任何一个错误都不会去执行此方法

@Override

public String execute() throws Exception

{

return SUCCESS;

}

//验证方法,重写validate()

/*public void validate()

{

//此处验证用户输入的信息,需要注意的是,此处只处理错误的情况,所以表达式都应该是判断错误的情况下做如何处理

if(username == null || username.length()<6 || username.length()>12)

{

this.addActionError("用户名不合法");

this.addFieldError(username, "您的用户名不合法");

}

if(password == null || password.length()<6 || password.length()>10)

{

this.addActionError("密码不合法");

}

else if(repassword == null || repassword.length()<6 ||repassword.length()>10)

{

this.addActionError("确认密码不合法");

}

else if (!repassword.equals(password))

{

this.addActionError("2次输入密码不同");

}

if(age<18)

{

this.addActionError("您的年龄未满18岁");

}

if(birthday != null && graduation != null)

{

Calendar c1 = Calendar.getInstance();

c1.setTime(birthday);

Calendar c2 = Calendar.getInstance();

c2.setTime(graduation);

if(!c1.before(c2))

{

this.addActionError("您出生在您毕业之后");

}

}

else if(birthday == null)

{

this.addActionError("您的出生日期为空");

}

if (graduation == null)

{

this.addActionError("您的毕业日期为空");

}

}

*/

}

时间: 2024-11-08 19:51:19

struts2.3.20中action中的validate校验的相关文章

struts2学习笔记之八:Action中方法的动态调用

方法一:action名称+!+方法名称+后缀 Action类中增加addUser()和delUser()方法, package com.djoker.struts2; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.Action; public class UserAction { private String username; private String password; pri

Struts2(四):在Action中如何访问Web资源

1.什么WEB资源? HttpServletRequest,HttpServletRespone,HttpApplication,ServletContext,HttpSession等原生ServletAPI. 2.在Struts2中为什么要访问WEB资源? B/S应用中的Controller必然会有场景需要访问WEB资源:向域对象中读写属性,读取Cookie,获取realPath等. 3.在Struts2中如何访问WEB资源? a)和ServletAPI解耦的方式:只能有限的ServletAP

struts2对action中的方法进行输入校验

有时我们需要对Action中注入的字段进行校验,这时我们就需要用到invidate()方法了. 首先需要Action实现ActionSupport,然后重写invidate()方法,在其中对字段进行校验. 如果校验合法,则执行action中的相应方法(一般为execute),请求转发到相应的jsp: 如果校验失败,可以通过addFieldError()方法将错误信息添加到FieldErrors中, 此时action中的相应方法(一般为execute)不会执行,struts2框架默认返回"inpu

关于Struts2中Action从表单取值并且存到Web元素中(session)

声明:本博客非原创,[转载:http://blog.csdn.net/Cece_2012/article/details/7617775] 在struts2中,Action不同于struts1.x中的Action.在struts2中Action并不需要继承任何控制器类型或实现相应接口.比如struts1.x中的Action需要继承Action或者DispatcherAction. 同时struts2中的Action并不需要借助于像struts1.x中的ActionForm获取表单的数据.可以直接

关于Struts2 Action中get和set惹得祸。

代码: 1 public class RandomAction extends PageAction { 2 3 /**随机抽取**/ 4 private IRandomService randomService; 5 6 /**责任民警**/ 7 private IScZrmjService scZrmjService; 8 9 /**企业基本信息**/ 10 private IQyjbxxService qyjbxxService; 11 12 private User user; 13 1

Struts2中使用execAndWait后,在 Action中调用getXXX()方法报告java.lang.NullPointerException异常的原因和解决方法

使用 Struts2 编写页面,遇到一个要长时间运行的接口,因此增加了一个execAndWait ,结果在 Action 中调用 getContext()的时候报告异常 1 ActionContext context = ActionContext.getContext(); 2 ServletContext servletContext = (ServletContext) context.get(ServletActionContext.SERVLET_CONTEXT); //抛空指针异常

第三章Struts2 Action中动态方法调用、通配符的使用

01.Struts 2基本结构 使用Struts2框架实现用登录的功能,使用struts2标签和ognl表达式简化了试图的开发,并且利用struts2提供的特性对输入的数据进行验证,以及访问ServletAPI时实现用户会话跟踪,其简单的程序运行流程图如下 Struts2框架是基于MVC模式.基于MVC模式框架的核心就是控制器对所有请求进行统一处理.Struts2的控制器StrutsPrepareAndExecuteFilter由ServletAPI中的Filter充当,当web容器的接收到登录

调查管理系统 -(6)自定义Struts2的拦截器&amp;自定义UserAware接口&amp;Action中模型赋值问题&amp;Hibernate懒加载问题

1.对于一些功能,如我的调查或新建调查等,只有用户登录后才能进行操作,因此必须对用户是否登录进行判断.当用户登录后才能使用相应的功能,如果没有登录则需为用户导航到登录页面让其进行登录.这个功能可以通过自定义Struts2的拦截器来完成. 2.当用户登录之后,由于是将用户的信息保存在session中的.这样当一些Action中需要用到当前登录的用户的信息时需要手动的从session中获取,不太方便,因此我们声明了一个UserAware接口(即用户关注,类似于Struts2中的SessionAwar

struts2对action中的方法进行输入校验---xml配置方式(3)

上面两篇文章已经介绍了通过编码java代码的方式实现action方法校验,这里我们介绍另外一种方式:xml配置文件 首先我们来看一个例子: ValidateAction.java: package com.itheima.action; import com.opensymphony.xwork2.ActionSupport; public class ValidateAction extends ActionSupport { private String username; private