0
点赞
收藏
分享

微信扫一扫

SpringMVC: InitBinder的用法


1 数据校验
@InitBinder
public void initBinder(DataBinder binder) {
// 设置验证的类为UserValidator
binder.setValidator(new UserValidator());

 } 

public class UserValidator implements Validator{

@Override
public boolean supports(Class<?> clazz) {
return User.class.equals(clazz);
}

@Override
public void validate(Object object, Errors errors) {
// 验证username、sex和age是否为null
ValidationUtils.rejectIfEmpty(errors, "username", null, "用户名不能为空");
ValidationUtils.rejectIfEmpty(errors, "sex", null, "性别不能为空");
ValidationUtils.rejectIfEmpty(errors, "age", null, "年龄不能为空");
}

}

2 数据转换
@InitBinder
public void initBinder(WebDataBinder binder){
// 注册自定义编辑器
binder.registerCustomEditor(Date.class, new DateEditor2());
}
public class DateEditor2 extends PropertyEditorSupport{
@Override
public void setAsText(String text) throws IllegalArgumentException {
SimpleDateFormat dateFormat = new SimpleDateFormat(“yyyy-MM-dd”);
try {
Date date = dateFormat.parse(text);
setValue(date);
} catch (ParseException e) {
e.printStackTrace();
}
}

}

都是在controller类里加


举报

相关推荐

0 条评论