本篇文章给大家分享的是有关web-flash中怎么添加数据校验功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
实体类
在实体类中对应的字段添加验证注解,以:cn.enilu.flash.bean.entity.message.MessageTemplate为例
@Data
@Entity(name="t_message_template")
@Table(appliesTo = "t_message_template",comment = "消息模板")
public class MessageTemplate extends BaseEntity {
@Column(name="code",columnDefinition = "VARCHAR(32) COMMENT '编号'")
@NotBlank(message = "编号不能为空")
private String code;
@NotBlank(message = "内容并能为空")
@Column(name="content",columnDefinition = "TEXT COMMENT '内容'")
private String content;
@Column(name="id_message_sender",columnDefinition = "BIGINT COMMENT '发送者id'")
@NotNull(message = "发送器不能为空")
private Long idMessageSender;
....
}
上述中针对字符串类型的数据,我们使用不能为空的验证@NotBlank,该注解标识该字段不能为null或者空字符串。
针对idMessageSender,则使用了@NotNull来验证;由于@NotBlank是针对字符串做验证,所以针对idMessageSender不能使用它,否则会报异常,下面列举更多常用注解:
@AssertFalse 校验false
@AssertTrue 校验true
@DecimalMax(value=,inclusive=) 小于等于value,
inclusive=true,是小于等于
@DecimalMin(value=,inclusive=) 与上类似
@Max(value=) 小于等于value
@Min(value=) 大于等于value
@NotNull 检查Null
@Past 检查日期
@Pattern(regex=,flag=) 正则
@Size(min=, max=) 字符串,集合,map限制大小
@Validate 对po实体类进行校验
在提交数据的方法中,需要使用@Valid来标识验证该类中的字段输入的合法性。
以cn.enilu.flash.api.controller.message.MessagetemplateController.save方法为例:
@RequestMapping(method = RequestMethod.POST)
@BussinessLog(value = "编辑消息模板", key = "name", dict = CommonDict.class)
@RequiresPermissions(value = {Permission.MSG_TPL_EDIT})
public Object save(@ModelAttribute @Valid MessageTemplate tMessageTemplate) {
messagetemplateService.saveOrUpdate(tMessageTemplate);
return Rets.success();
}
为了前端更友好的展示错误信息,在flash-vue-admin/src/utils/request.js中针对错误信息统一做了处理:
if(error.response && error.response.data.errors) {
Message({
message: error.response.data.errors[0].defaultMessage,
type: 'error',
duration: 5 * 1000
})
}
以上就是web-flash中怎么添加数据校验功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/enilu/blog/3081931