struts2中数据校验1

    今天看视频教程里面数据校验,看过后觉得挺复杂的,里面的环节确实很麻烦,不知道有没有一个很好的框架,虽然struts2里面有validate框架,不过还是觉得很不好用.

      先总结一下今天的收获:register.jsp

 <s:form action="regist">
  <s:textfield name="username" label="用户名"></s:textfield>
  <s:textfield name="password" label="密码"></s:textfield> 
  <s:textfield name="age" label="年龄"></s:textfield>
  <s:textfield name="birthday" label="生日"></s:textfield>
  <s:submit></s:submit>
  </s:form>

 

struts.xml

<action name="regist" class="fq.registerAction">
 <result>/welcome.jsp</result>
 <result name="input">/register.jsp</result>
 </action>

 

registerAction

public class registerAction extends ActionSupport {
 private String username;
 private String password;
 private int age;
 private Date birthday;
 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 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 String execute() throws Exception
 {
  return SUCCESS;
 }
 public void validate()
 {
  if(null==username || username.length()<6 ||username.length()>10)
  {
   this.addFieldError("username", "username is error");
  }
  if(age<1||age>150)
  {
   this.addFieldError("age","age is error");
  }
  if(null==birthday)
  {
   this.addFieldError("birthday", "birthday is error");
  }
 }
}

首先进行数据转换,比方如果年龄里面输入的不是数字,struts2会自动提示Invalid field value for field "age".如果birthday不是日期也会提示错误的.

说明框架是先校验数据转换,然后会在validate方法里面校验数据.页面里面并没有显示错误的代码,这样他会在   this.addFieldError("age","age is error"); age属性的上面显示错误,还有一种显示错误的方法是在页面写 <s:fielderror></s:fielderror>

不过系统的提示是用与开发人员,真正用户看到没有用处,需要把系统提示改为自定义的提示,等我看完再总结.

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 2
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论 2

打赏作者

zzxiaoma

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值