struts2 使用Validation框架验证数据

model

public class User implements java.io.Serializable {

 // Fields

 private Integer userId;
 private String userName;
 private String userTrueName;
 private String userPassword;
 private Date createDate;

....

get

set

}

 

action

public class UserAction extends ActionSupport{

private IUserService userService;
 private User user;
 private int userId;

 

public String userLogin() throws Exception{
  String userName = user.getUserName();
  String userPassword = user.getUserPassword();
  if(userName != null && !userName.equals("")) {
   //System.out.println(userName);
   User u = userService.findByName(userName);
   if(u == null || u.equals("")) {
    this.addFieldError("user.userName", "用户名不正确,请重新输入");
    return "error";
   } else if(!u.getUserPassword().equals(userPassword)) {
    this.addFieldError("user.userPassword", "密码不正确,请重新输入");
    return "error";
   } else {
    getSession().setAttribute("userId", u.getUserId());
    getSession().setAttribute("userName",userName);
    getSession().setAttribute("userTrueName",u.getUserTrueName());
    getSession().setAttribute("password",userPassword);
    return "success";
   }
  } else {
   return "input";
  }
 }

....

get

set

}

同个包下:UserAction-validation.xml

<?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE validators PUBLIC
    "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
    "
http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">

<validators>
 <field name="user.userName">
  <field-validator type="requiredstring">
   <message>登录的用户名不能为空</message>
  </field-validator>
  <field-validator type="regex">
   <param name="expression">^[a-zA-Z][a-zA-Z0-9_]{1,15}$</param>
   <message>登录的用户名必须以字母开始,后面跟字母、数字或_,长度为1-15位</message>
  </field-validator>
 </field>
 
 <field name="user.userPassword">
  <field-validator type="requiredstring">
   <message>登录的密码不能为空</message>
  </field-validator>
  <field-validator type="regex">
   <param name="expression">^[a-zA-Z0-9!@#]{1,15}$</param>
   <message>登录的密码可以由字母、数字和! @ # 组成,长度为1-15位</message>
  </field-validator>
 </field>
</validators>

 

 出错提示文字字体颜色,添加样式

 .label {font-style:italic; }
.errorLabel {font-style:italic;color:red; }
.errorMessage {color:red; }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值