struts2验证框架 如何验证全角、半角

 我来答
bpkdww
2011-01-26 · TA获得超过1800个赞
知道小有建树答主
回答量:1140
采纳率:100%
帮助的人:277万
展开全部
首先我们需要继承FieldValidatorSupport类,然后我们重写他的validate方法
validate
package com.opensymphony.xwork2.validator.validators;

import com.opensymphony.xwork2.validator.ValidationException;

public class ListPropertyValidator extends FieldValidatorSupport {
public void validate(Object object) throws ValidationException {
String fieldName = getFieldName();//userList[$i].username
Object value = this.getFieldValue("userList[0].username", object);//here is very important
System.out.println(value);

if ((minLength > -1) && (val.length() < minLength)) {
addFieldError(fieldName, object);
} else if ((maxLength > -1) && (val.length() > maxLength)) {
addFieldError(fieldName, object);
}
}
}

上面的过程还不完整,需要通过一种

Action code:
public class DemoAction extends ActionSupport {
private List<User> userList;
}

User code:
public class User implements Serializable {
private String username;
private String password;
private String gender;
//省略了getter, setter
}

Xml Configuration:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"">
</validators>
<field name="userList[$i].username">
<field-validator type="listproperty">//这里需要设计出一种比较优雅的配置方式来进行验证集合类的元素
<message key="devices.add.guest.guestid.required"></message>
</field-validator>
</field>
</validators>

追加默认的验证器:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator Config 1.0//EN"
"">
<!-- START SNIPPET: validators-default -->
<validators>
<validator name="listproperty" class="com.opensymphony.xwork2.validator.validators.ListPropertyValidator"/>
</validators>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
北京稳联技术有限公司
2024-10-22 广告
北京稳联技术是一家专注于工业通讯协议转换的公司,咨询热线:13661193815。公司以研发工业通信设备为主,专注于工业通讯中Modbus、RS232/485、Modbus TCP、CanOpen、Can等各种通讯协议接入Profibus/... 点击进入详情页
本回答由北京稳联技术有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式