java的一些注解

mac2024-05-11  37

关于对象的注解:

1、lombok 

@Data:注解在类上,相当于同时使用了@ToString、@EqualsAndHashCode、@Getter、@Setter和@RequiredArgsConstrutor这些注解@Getter/@Setter:用在属性上,再也不用自己手写setter和getter方法了,还可以指定访问范围@ToString:用在类上,可以自动覆写toString方法,当然还可以加其他参数,例如@ToString(exclude=”id”)排除id属性,或者@ToString(callSuper=true, includeFieldNames=true)调用父类的toString方法,包含所有属性@EqualsAndHashCode:用在类上,自动生成equals方法和hashCode方法

2、关于时间的注解:

时间格式:使用Spring中的@DateTimeFormat注解或是json中的 @JsonFormat

3、参数校验:

@Null 只能是null@NotNull 不能为null 注意用在基本类型上无效,基本类型有默认初始值@AssertFalse 必须为false@AssertTrue 必须是true@Pattern(regexp="reg") 验证字符串满足正则@Size(max, min) 验证字符串、数组、集合长度范围@NotEmpty 验证字符串不为空或者null@NotBlank 验证字符串不为null或者trim()后不为空@Max 规定值得上限int@Min 规定值得下限@DecimalMax("10.8") 以传入字符串构建一个BigDecimal,规定值要小于这个值 @DecimalMin 可以用来限制浮点数大小@Digits(int1, int2) 限制一个小数,整数精度小于int1;小数部分精度小于int2@Digits 无参数,验证字符串是否合法@Range(min=long1,max=long2) 检查数字是否在范围之间@Email 用于验证一个字符串是否是一个合法的右键地址,空字符串或null算验证通过

4、数字精度 

    @Column 标注的常用属性是name,用于设置映射数据库表的列名。此外,该标注还包含其它多个属性,如:unique、 nullable、length、precision等:

unique属性表示该字段是否为唯一标识,默认为false nullable属性表示该字段是否可以为null值,默认为true length属性表示字段的长度,当字段的类型为varchar时,该属性才有效,默认为255个字符 precision属性和scale属性一起表示精度,当字段类型为double时,precision表示数值的总长度,scale表示小数点所占的位数

 

最新回复(0)