本篇文章给大家分享的是有关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中怎么添加数据校验功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。