国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Java Validation Api如何實現(xiàn)自定義注解

瀏覽:7日期:2022-08-25 13:28:10

背景

官方提供的注解多數(shù)可以解決現(xiàn)實業(yè)務(wù)場景中基本業(yè)務(wù)校驗,但有些特殊場景因業(yè)務(wù)的復(fù)雜性,也還是需要在入口處對入?yún)⑦M(jìn)行各種角度的校驗,以求簡化業(yè)務(wù)層的處理,降低業(yè)務(wù)處理復(fù)雜性與方法入口的強(qiáng)約束性。 以上背景,下面就舉個簡單Demo進(jìn)行自定義注解校驗的實現(xiàn)。

注解定義類

import javax.validation.Constraint;import javax.validation.Payload;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;/** * @author wpp * @date 2020/8/22 14:30 */@Target({ElementType.FIELD, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Constraint(validatedBy = PhoneCustomizeValidator.class)public @interface CustomizeValidator { String message() default '不是國內(nèi)手機(jī)號'; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {};}

注解方法處理類

import cn.hutool.core.util.StrUtil;import javax.validation.ConstraintValidator;import javax.validation.ConstraintValidatorContext;import java.util.regex.Pattern;/** * @author wpp * @date 2020/8/22 14:33 */public class PhoneCustomizeValidator implements ConstraintValidator<CustomizeValidator, String> { private String phoneRegex = '^(16[0-9]|19[0-9]|13[0-9]|15[012356789]|17[0-9]|18[0-9]|14[0-9])[0-9]{8}$'; private Pattern phonePattern = Pattern.compile(phoneRegex); @Override public void initialize(CustomizeValidator constraintAnnotation) { } @Override public boolean isValid(String value, ConstraintValidatorContext context) { if (StrUtil.isBlank(value)) { return Boolean.FALSE; } return phonePattern.matcher(value).matches(); }}

使用方式

import io.swagger.annotations.ApiModelProperty;import lombok.Builder;import lombok.Data;import org.hibernate.validator.constraints.Length;/** * @author wpp * @date 2020/8/22 14:49 */@Data@Builderpublic class CustomizeDTO { @ApiModelProperty(name = 'phone', value = '手機(jī)號碼') @Length(max = 13) private String phone;}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 自拍自录videosfree自拍自录 | 国产一区二区免费播放 | 午夜a毛片 | 男人扒开腿躁女人j | 久热久草 | 亚洲欧美成人影院 | 久草在线观看视频 | 精品国产夜色在线 | 久久91精品国产91久久 | 手机在线亚洲 | 久久久9999久久精品小说 | 一区二区三区日韩精品 | 免费一级在线 | 午夜一级成人 | 青久草视频| 国产成人99久久亚洲综合精品 | 美女作爱网站 | 久久在线免费观看视频 | 免费国产高清精品一区在线 | 欧美另类69xxxxx 视频 | 私人玩物福利 | 青青热久久国产久精品 | 香蕉久久一区二区不卡无毒影院 | 欧美精品一区二区三区四区 | 中文字幕一区二区三区免费视频 | 亚洲精品国产福利 | 三上悠亚免费一区二区在线 | 成人免费网站视频 | 中文字幕在线看片成人 | 日本免费小视频 | 中文字幕一区日韩在线视频 | 亚洲天堂2015 | 中文字幕在线乱码不卡区区 | 日韩欧美~中文字幕 | 精品久久久久久久久久中文字幕 | 久久久免费视频观看 | 男人的天堂高清在线观看 | 午夜性爽视频男人的天堂在线 | 欧美色成人 | 特级毛片全部免费播放器 | 成人综合国产乱在线 |