码迷,mamicode.com
首页 > 其他好文 > 详细

JPA的@Entity@Table@Column@Id

时间:2020-05-09 23:29:26      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:注解   实体   val   length   table   rac   tor   操作   自定义   

JPA是Java Persistence Api的简称,可以将一个正常java实体类映射到数据库。通过对java对象的操作来实现对数据库的操作。

JPA定义了注解来实现这一步骤。

import lombok.Data;

import javax.persistence.*;

@Data
@Entity
@Table(name="user_info")
public class User {
    @Id
    @GeneratedValue
    int id;
    @Column(name = "user_name",nullable = true)
    String name;
    int age;
}

 

@Entity 表明该类为一个实体类,默认会找到一个对应的表名(表名首字母大写,并将_去掉,同事将_后的首字母大写)。

  常用属性:name,指定表名

  也可以自定义表名:

  @Entity(name = “user”)

 

@Table,当实体类名与表名不一致时,可以通过该注解修改。

  常用属性:name,指定表。

  @Table(name = “user”)

 

@Cloumn,与表名类似,实体类属性和表的字段有相应的对应规则,但是如果想自定义,可以使用该注解。

  常用属性:

    name,指定列名。

    unique,是否唯一。

    nullable,是否允许为空。

    length,对于字符型,指定最大字符长度。

    insertable,是否允许插入。

    updatetable,是否允许更新

@id,写在属性上,指定表的主键。

  它有多种生成方式:

  TABLE:容器指定用底层的数据表确保唯一;

  SEQUENCE:使用数据库德SEQUENCE列莱保证唯一(Oracle数据库通过序列来生成唯一ID);

  IDENTITY:使用数据库的IDENTITY列莱保证唯一;

  AUTO:由容器挑选一个合适的方式来保证唯一;

  NONE:容器不负责主键的生成,由程序来完成。

  @id注解还有俩个配套的注解:@GeneratedValue、@GenericGenerator,用来指定主键生成策略。

  @GenericValue,JPA通用策略生成器,默认为Auto方式。

  @GenericGenerator,自定义主键生成策略。

JPA的@Entity@Table@Column@Id

标签:注解   实体   val   length   table   rac   tor   操作   自定义   

原文地址:https://www.cnblogs.com/whalesea/p/12860575.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!