package cn.domain;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;
public class formbean {
private String userName;
private String nickName;
private String mail;
private String birthday;
private String password;
private String password2;
//可能各个文本框可能出现的文本错误封装到map集合中比较好取
private Map errorsmap = new HashMap();
public boolean confirm() {
boolean isOk = true;
if (userName == null && userName.trim().equals("")) {
isOk = false;
errorsmap.put("userName", "用户名不能是空");
} else {
if (!userName.matches("[a-zA-Z](3,8)")) {
isOk = false;
errorsmap.put("userName", "用户名为3-8位字母!");
}
}
if (password == null && password.trim().equals("")) {
isOk = false;
errorsmap.put("password", "密码不能是空的");
} else {
if (!password.matches("\\d(3,8)")) {
isOk = false;
errorsmap.put("password", "密码必须是3-8位数字");
}
}
if (password2 == null && password2.trim().equals("")) {
isOk = false;
errorsmap.put("password2", "重新密码不能是空的");
} else {
if (!password.matches("\\d(3,8)")) {
isOk = false;
errorsmap.put("password2", "密码必须是3-8位数字");
}
}
if (password != password2) {
isOk = false;
errorsmap.put("password2", "两次输入的密码不一样");
}
if (mail == null && mail.trim().equals("")) {
isOk = false;
errorsmap.put("mail", "邮箱不能是空的");
} else {
if (!mail.matches("\\w+@\\w+(\\.\\w+)+")) {
isOk = false;
errorsmap.put("mail", "邮箱格式不正确");
}
}
// 昵称是中文的,常用汉字范围是"[\u4e00-\u9fa5]+"
if (nickName == null && nickName.trim().equals("")) {
isOk = false;
errorsmap.put("nickName", "昵称不能是空的!");
} else {
if (!mail.matches("[\u4e00-\u9fa5]+")) {
isOk = false;
errorsmap.put("nickName", "昵称必须是汉字");
}
}
// 日期的格式必须是1990-12-15形式,使用
if (nickName == null && nickName.trim().equals("")) {
try {
DateLocaleConverter dlc = new DateLocaleConverter();
dlc.convert(this.birthday, "yyyy-MM-dd");
} catch (Exception e) {
isOk = false;
errorsmap.put("birthday", "生日格式输入错误,1990-12-15形式");
}
}
return isOk;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getNickName() {
return nickName;
}
public void setNickName(String nickName) {
this.nickName = nickName;
}
public String getMail() {
return mail;
}
public void setMail(String mail) {
this.mail = mail;
}
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getPassword2() {
return password2;
}
public void setPassword2(String password2) {
this.password2 = password2;
}
}
分享到:
相关推荐
本篇文章主要介绍了SpringMVC中使用bean来接收form表单提交的参数时的注意点,具有很好的参考价值。下面跟着小编一起来看下吧
在struts框架中,如果每次都去校验form中的每个字段,显然费时费力,本例通过java反射得到form中的字段和值,并较验,用于在与数据库交互之前的校验,从而防止数据库恶意注入. 随包附带一个通用的易扩展的正则表达式校验类...
A FormBean是一种数据bean,主要用来封装表单提交上来的数据,并把这些数据传递给Action B 在FormBean中可以对页面上传递来的参数进行一下格式上的验证,这种验证是一种客户端的验证 C 用户每次提交表单,都会...
介绍如何使用动态formbean的例子
NULL 博文链接:https://haixiami200411.iteye.com/blog/736554
2.Struts2和Struts1.x的... Struts1.x 必须继承org.apache.struts.action.Action或者其子类,表单数据封装在FormBean中。 Struts 2无须继承任何类型或实现任何接口,表单数据包含在Action中,通过Getter和Setter获取。
Struts1.2动态FormBean 加 验证功能 的一个例子
ActionServlet把请求交给action去处理之前,会将请求参数封装成一个formbean对象(就是一个java类,这个类中的每个属性对应一个请求参数),封装成一个什么样的formbean对象呢?看配置文件。 3.要说明的是, ...
structs的总控制器ActionServlet在用户提交请求时将数据放到对应的form对象中的成员变量中。 第四步:派发请求;控制器根据配置信息,对象ActionConfig将请求派发到具体的Action,对应的formBean一并传给这个
NULL 博文链接:https://zywang.iteye.com/blog/413003
为了进一步熟悉SSM框架,我单独摘出了mybatis部署在普通的java Web项目上,从spring上插入了依赖注入,自己根据反射编写了一个映射工具类,可以根据前端返回的信息来封装bean FormBean如下 public class FormBean { ...
流程:在Struts中,用户的请求一般以*.do作为请求服务名,所有的*.do请求均被指向ActionSevlet,ActionSevlet根据Struts-config.xml中的配置信息,将用户请求封装成一个指定名称的FormBean,并将此FormBean传...
> 配置资源文件:配置ApplicationResources.prop内容,把验证的的内容写道其中; > 配置FormBean: 配置FormBean中的validate()方法,处理相关验证; > 配置Jsp:配置JSP中相关信息接受后台验证信息的处理结果;
类与类之间的关系主要体现在表与表之间的关系进行操作,它们都市对对象进行操作,我们程序中把所有的表与类都映射在一起,它们通过配置文件中的many-to-one、one-to-many、many-to-many、 4. 说下Hibernate的缓存...
formBean在提交表单的时候,域中数据库在下一次中仍然保留引起的,struts formBean 默认的scope为session,手动设置为request,就好了
Struts1.x 必须继承org.apache.struts.action.Action或者其子类,表单数据封装在FormBean中。Struts 2无须继承任何类型或实现任何接口,表单数据包含在Action中,通过Getter和Setter获取。 虽然,在理论上Struts2的...
在struts1中每次提交表单的时候,表单中的属性值都先赋予formbean,然后操作formbean。但是现在struts2中用对象.属性名来给对象赋值,然后操作这个对象。而这些对象都是vo的实现,如果使用hibernate,可以直接把...
MVC模式的回顾 回顾Struts的请求处理时序...封装Formbean数据时的问题 防止表单重复提交 使用复选框的技巧 使用下拉列表框的技巧 文件上传 DispatchAction的应用 Validator框架 Struts请求处理过程的源码分析与digester
传智播客的struts高级实战进阶 ...封装Formbean数据时的问题 防止表单重复提交 使用复选框的技巧 使用下拉列表框的技巧 文件上传 DispatchAction的应用 Validator框架 Struts请求处理过程的源码分析与digester
北大青鸟S2阶段的项目PPT,内容包含怎么用Action,Form,FormBean,DispatcherAction。