偶然一次,被面试官问道,说说你都用过哪些注解,回忆起来,开发过程中真没少用到注解开发,但是还没有详细的总结过,故写下这篇随手笔记,有用到新的注解也会继续在这篇博客里更新
1、Entity实体类用到的
注解名称 | 对应类 | 注解说明 |
@DynamicUpdate | Hibernate | 默认是true,只更新改变了的字段,其他字段不更新。 |
@DynamicInsert | Hibernate | 默认是true,如果字段是null,不会写入插入语句。 |
@Entity | 与数据库映射实体。 | |
@Table | name=”数据库表明”,将数据库表名与实体名字做映射。 | |
@Id | Id,标记主键(Spring-Data-Jpa规范中一定要有主键) | |
@JsonProperty | Jackson | 将对象的属性序列化成注解中对应的名称 |
@JsonIgnore | Jackson | 实体转Json时忽略 |
@Lob | 数据库的数据类型是clob,实体类的是String,之间相互转换的注解 |
2、Lombok
注解名称 | 注解类 | 注解说明 |
@Slf4j | Lombok | 自动生成当前类logger,使用log.info();log.error();来使用。 |
@Data | Lombok | 注解在类上, 为类提供读、非final写属性, 此外还提供了 equals()、hashCode()、toString() 方法。 |
@NonNull | Lombok | 注解在参数上, 如果该类参数为 null , 就会报出异常, throw new NullPointException(参数名)。 |
@Getter/@Setter | Lombok | 注解在类上, 为类提供读、非final写属性。 |
@EqualsAndHashCode | Lombok | 注解在类上, 为类提供 equals() 和 hashCode() 方法。 |
@NoArgsConstructor | Lombok | 无参构造函数。 |
@RequiredArgsConstructor | Lombok | 指定必须参数构造函数。 |
@AllArgsConstructor | Lombok | 全参构造函数。 |