java中常用注解汇总

这篇具有很好参考价值的文章主要介绍了java中常用注解汇总。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、java实体类中注解

@Null:被注释的元素必须为null
@NotNull:被注释的元素不能为null
@AssertTrue:该字段只能为true
@AssertFalse:该字段的值只能为false
@Min(value):被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value):被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(“value”):被注释的元素必须是一个数字,验证小数的最小值
@DecimalMax(“value”):被注释的元素必须是一个数字,验证小数的最大值
@Size(max,min):查该字段的size是否在min和max之间,可以是字符串、数组、集合、Map等
@Past:被注释的元素必须是一个过去的日期
@Future:被注释的元素必须是一个将来的日期
@Pattern(regexp = “[abc]”):被注释的元素必须符合指定的正则表达式。
@Email:被注释的元素必须是电子邮件地址
@Length(max=5,min=1,message=“长度在1~5”):检查所属的字段的长度是否在min和max之间,只能用于字符串
@NotEmpty:被注释的字符串必须非空
@Range:被注释的元素必须在合适的范围内
@NotBlank:不能为空,检查时会将空格忽略
@NotEmpty:不能为空,这里的空是指空字符串
@TableField(exist = false) 字段不新增数据库
@TableField(updateStrategy = FieldStrategy.NOT_EMPTY,jdbcType = JdbcType.VARCHAR) 如果字段为空的时候 不修改
@JsonFormat:时间格式化注解(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")

1 Maven依赖    

  <!--第一种方式导入校验依赖-->
        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>2.0.1.Final</version>
        </dependency>
        <!--第二种方式导入校验依赖-->
        <dependency>
            <groupId>org.hibernate.validator</groupId>
            <artifactId>hibernate-validator</artifactId>
        </dependency>

2 值校验
2.1 @Null注解
被注解的元素必须为null

@Null(message = "必须为null")
private String username;

2.2 @NotNull注解
被注解的元素必须不为null

@NotNull(message = "必须不为null")
private String username;

2.3 @NotBlank注解
验证注解的元素值不为空(不为null、去除首位空格后长度为0) ,并且类型为String。

@NotBlank(message = "必须不为空")
private String username;

2.4 @NotEmpty注解
验证注解的元素值不为null且不为空(字符串长度不为0、集合大小不为0) ,并且类型为String。

@NotEmpty(message = "必须不为null且不为空")
private String username;

2.5 @AssertTrue注解
被注解的元素必须为true,并且类型为boolean。

@AssertTrue(message = "必须为true")
private boolean status;

2.6 @AssertFalse注解
被注解的元素必须为false,并且类型为boolean。

@AssertFalse(message = "必须为false")
private boolean status;

3 范围校验
3.1 @Min注解
被注解的元素其值必须大于等于最小值,并且类型为int,long,float,double。

@Min(value = 18, message = "必须大于等于18")
private int age;

3.2 @Max注解
被注解的元素其值必须小于等于最小值,并且类型为int,long,float,double。

@Max(value = 18, message = "必须小于等于18")
private int age;

3.3 @DecimalMin注解
验证注解的元素值大于等于@DecimalMin指定的value值,并且类型为BigDecimal。

@DecimalMin(value = "150", message = "必须大于等于150")
private BigDecimal height;

3.4 @DecimalMax注解
验证注解的元素值小于等于@DecimalMax指定的value值 ,并且类型为BigDecimal。

@DecimalMax(value = "300", message = "必须大于等于300")
private BigDecimal height;

3.5 @Range注解
验证注解的元素值在最小值和最大值之间,并且类型为BigDecimal,BigInteger,CharSequence,byte,short,int,long。

@Range(max = 80, min = 18, message = "必须大于等于18或小于等于80")
private int age;

3.6 @Past注解
被注解的元素必须为过去的一个时间,并且类型为java.util.Date。

@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Past(message = "必须为过去的时间")
private Date createDate;

3.7 @Future注解
被注解的元素必须为未来的一个时间,并且类型为java.util.Date。

@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Future(message = "必须为未来的时间")
private Date createDate;

4 长度校验
4.1 @Size注解
被注解的元素的长度必须在指定范围内,并且类型为String,Array,List,Map。

@Size(max = 11, min = 7, message = "长度必须大于等于7或小于等于11")
private String mobile;

4.2 @Length注解
验证注解的元素值长度在min和max区间内 ,并且类型为String。

@Length(max = 11, min = 7, message = "长度必须大于等于7或小于等于11")
private String mobile;

5 格式校验
5.1 @Digits注解
验证注解的元素值的整数位数和小数位数上限 ,并且类型为float,double,BigDecimal。

@Digits(integer=3,fraction = 2,message = "整数位上限为3位,小数位上限为2位")
private BigDecimal height;

5.2 @Pattern注解
被注解的元素必须符合指定的正则表达式,并且类型为String。

@Pattern(regexp = "\\d{11}",message = "必须为数字,并且长度为11")
private String mobile;

5.3 @Email注解
验证注解的元素值是Email,也可以通过regexp和flag指定自定义的email格式,类型为String。文章来源地址https://www.toymoban.com/news/detail-623216.html

 @Email(message = "必须是邮箱")
private String email;

到了这里,关于java中常用注解汇总的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java 常用注解, 常用关键字

    用 @Controller 定义一个控制器类 @Controller 用于标记在一个类上,使用它标记的类就是一个Spring(MVC,BOOT)的 Controller类,分发处理器会扫描使用该注解的类的方法,并检测该方法是否使用了 @RequestMapping 注解。 @Controller 只是定义了一个控制器类,而使用 @RequestMapping 注解的方法

    2024年02月08日
    浏览(40)
  • SpringBoot常用的简化开发注解

    在Spring Boot框架中,有许多常用的注解可用于开发项目。下面是其中一些常见的注解及其功能和属性的说明: @RestController 是 Spring Framework 中的一个注解,用于标识一个类是 RESTful 服务的控制器。它结合了 @Controller 和 @ResponseBody 注解的功能,简化了创建 RESTful 服务的代码。

    2024年02月10日
    浏览(29)
  • Java常用注解

    友情提醒: 先看文章目录,大致了解文章知识点结构,点击文章目录可直接跳转到文章指定位置。用到的资料都放在文章最末尾了(不过估计也没人看完这篇文章,太长了) ①元数据概念 :描述数据或信息资源等对象的数据,其使用目的在于:识别资源;评价资源;追踪使用

    2024年02月04日
    浏览(37)
  • Java的一些常用注解及其作用

    1.1 @Component 通用的注解,可标注任意类为 Spring 组件。如果一个 Bean 不知道属于哪个层,可以使用@Component 注解标注。 1.2 @Repository 对应持久层即 Dao 层,主要用于数据库相关操作。 1.3 @Service 对应服务层,主要涉及一些复杂的逻辑,需要用到 Dao 层。 1.4 @Controller 对应 Spring MV

    2024年02月01日
    浏览(41)
  • Spring注解驱动开发之常用注解案例_告别在XML中配置Bean

    注解驱动开发就是不再使用Spring的bean.xml文件,改为纯使用注解的方式开发 @Configuration 此注解为配置类注解,相当于spring.xml文件,即配置类==配置文件 @Bean 给容器中注册一个Bean;类型为返回值的类型,id默认是用方法名作为id 示例 Person类(后续注解配置类中都会以此类举例),

    2024年01月21日
    浏览(49)
  • 常用编程语言排行与应用场景汇总(2023.10)

    截止到2023年10月,TIOBE社区公布的编程语言排行榜,排名前20: 趋势: 其他语言: Python是一种高级的、通用的编程语言,被广泛应用于多个领域。以下是Python的一些常见应用场景: Web开发:Python的Web框架(如Django和Flask)和Web开发工具使其成为开发Web应用程序的理想选择。它

    2024年02月06日
    浏览(36)
  • java面试【SpringBoot常用注解、linux命令】

    Spring Boot提供了大量的注解,用于简化配置和开发过程。以下是一些常用的Spring Boot注解的列表: 主要注解 : @SpringBootApplication:标记一个主启动类,表示这是一个Spring Boot应用程序的入口点。 控制器相关注解 : @Controller:标记一个类为控制器,处理HTTP请求。 @RestController:

    2024年02月15日
    浏览(51)
  • 5.2 Mybatis快速入门,轻松学会常用12种注解开发

    通过 《上文》,我们完成了 SpringBoot整合Mybatis ,那么接下来,我们就来使用Mybatis访问MySQL数据库! MyBatis的强大在于它的语句映射,它提供了 注解和XML映射 两种方式,都是为了减少我们的使用成本,屏蔽JDBC代码细节,节省代码,从而让我们更专注于SQL代码!本文主要使用

    2023年04月25日
    浏览(39)
  • java代码大全及详解(Java 常用代码汇总)

    1. 字符串有整型的相互转换 每天分享一点,每天进步一点,留个小尾巴《医院证明图片》

    2024年02月13日
    浏览(40)
  • 【Java从0到1学习】10 Java常用类汇总

    System类对读者来说并不陌生,因为在之前所学知识中,需要打印结果时,使用的都是“System.out.println();”语句,这句代码中就使用了System类。System类定义了一些与系统相关的属性和方法,它所提供的属性和方法都是静态的,因此,想要引用这些属性和方法,直接使用System类调

    2024年02月12日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包