注解大全

2022-07-18

注解大全

  1. @Column(name = "") 表示属性对应的字段名
  2. @Entity 放在bean类前,表示该类为实体类
  3. @Table(name = "") 表示该实体类对应的表名
  4. @Id 放在属性前,表示该属性为主键
  5. @GeneratedValue(generator="system-uuid") 用generator属性指定要使用的策略生成器。
  6. @GenericGenerator(name = "system-uuid", strategy = "uuid") 声明一个策略通用生成器,name为”system-uuid”,策略strategy为”uuid”。

uuid是通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准

  1. @ManyToOne ManyToOne(多对一)单向:不产生中间表,但可以用@Joincolumn(name=" ")来指定生成外键的名字,外键在多的一方表中产生!hibernate中@ManyToOne默认是立即加载,@OneToMany默认是懒加载

  2. @Joincolumn

    一对一:现假设有Person表和Address表,是一对一的关系,在Person中有一个指向Address表主键的字段addressID,所以主控方一定是Person,所谓主控方就是能改变关联关系的一方,Person只要改变addressID就改变了关联关系,所以Person是主控方,所以@JoinColumn写在Person类中
    双方都是主键id关联,使用 @PrimaryKeyJoinColumn(name = "id", referencedColumnName="address_id")

    一对多单向:在1的一方加入注解
    多对一单向:在多的一方加入注解

  3. @DateTimeFormat(pattern = "yyyy-MM-dd") 日期格式化注解

  4. @Transient 添加表中不存在的字段,给某个javabean上需要添加个属性,但是这个属性你又不希望给存到数据库中去,仅仅是做个临时变量,用一下。不修改已经存在数据库的数据的数据结构.

  5. @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") 设置页面显示的日期json格式

  6. @RestController 该控制器下的所有方法返回值自动转为json格式

  7. @Import 就是import标签,可以用于依赖第三方包中bean的配置和加载(可以导入配置类,支持导入普通的java类,并将其声明为一个bean)

    @Import({Dog.class, Cat.class})
    @Import(MyConfig.class)
    MyConfig中包含了Dog和Cat的bean配置
    详情见如下:https://blog.csdn.net/JIESA/article/details/80583331

  8. @Configuration

  9. @ConfigurationProperties(prefix = "com.mahaonan") springboot中自定义属性注解,声明共有名字