struts2 validate验证

9 篇文章 0 订阅
1 篇文章 0 订阅

struts2提供了validater框架验证,使用struts2框架验证必须和对应的Action类的名称保持一致;

例:1.动作类Action:LoginAction

    package com.allway.luo;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {
      private String loginname;
      private String password;
 public String getLoginname() {
  return loginname;
 }
 public void setLoginname(String loginname) {
  this.loginname = loginname;
 }
 public String getPassword() {
  return password;
 }
 public void setPassword(String password) {
  this.password = password;
 }
 @Override
 public String execute() throws Exception {
  return SUCCESS;
 }
 @Override
 public void validate() {
  // TODO Auto-generated method stub
  if("".equals(loginname)||"".equals(password))
  {
   this.addActionError("用户名密码不能为空看");
  }
    
}

2.页面代码如下:

<%@ page language="java" contentType="text/html; charset=utf-8"   pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>

<s:form action="Login" method="post" validate="true">
<tr><td><s:label value="姓名" theme="simple"></s:label></td><td><s:textfield theme="simple" name="loginname"></s:textfield></td></tr>
 <tr><td><s:label value="密码" theme="simple"></s:label></td><td><s:textfield theme="simple" name="password"></s:textfield></td></tr>
 <tr><td></td><td><s:submit theme="simple" value="登录"></s:submit></td></tr>

</s:form>
</body>
</html>

要使用validate验证必须在form标签里加入validate="true",切记在这里不可以加入<table></table>负责会出现错误信息累加的情况,自定义显示风格时必须要有theme属性等于simple,最好不要写在form标签里,如果写在form标签里会和validate="true"冲突,会被冲掉效果的.

3.验证文件:LoginAction-validation.xml如下:

<!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="loginname">
    <field-validator type="requiredstring">
      <message>*账号不能为空</message>
    </field-validator>
  </field>
   <field name="password">
    <field-validator type="requiredstring">
      <message>*邮件不能为空</message>
    </field-validator>
    <field-validator type="email">
      <message>*邮件格式不正确</message>
    </field-validator>
  </field>
</validators>
此处要注意当一个action里含有多个动作方法时,每个动作方法都需要各自验证时,可以根据动作方法名(或此方法对应的在struts.xml里的aciton名称)例如:LoginAction-register-validation.xml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值