美文网首页程序员
Hibernate笔记(映射持久化类)

Hibernate笔记(映射持久化类)

作者: Captain_w | 来源:发表于2017-09-05 17:33 被阅读18次

    Hibernate学习(映射持久化类)

    第一个实体类的映射

    @Entity
    @Table(name = "t_item")
    public class Item {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        public Long getId() {
            return id;
        }
    }
    

    这是一个最基础的实体类,使用@Entity 注解标记为"可持久化",并且带有一个用于数据库标识符属性@Id映射.@Table 注解重写JPA 默认表名为"t_item"

    配置键生成器

    当保存实体实例时,通常你会希望系统生成一个主键值,因此你会在@Id旁边编写@GeneratedValue注解,JPA使用javax.persistence.GenerationType枚举标准化集中值生成策略,可以使用@GeneratedValue(strategy =...)进行选择:

    1. GenerationType.AUTO Hibernate会选择一种合适的策略,询问你已配置数据库的那种SQL方言是最佳的,默认值.
    2. GenerationType.SEQUENCE HIbernate 预期(并且会创建,如果使用工具的话)你的数据库中存在一个名为HIBERNATE_SEQUENCE的序列,该序列会在每个INSERT之前被单独调用,已生成顺序数字值.
    3. GenerationType.IDENTITY Hibernate预期(并且会在表DDL中创建)一个特殊的自增长主键列,该列会在数据库INSERT时自动生成一个数字值.
    4. GenerationType.TABLE HIbernate将在您的数据库架构中使用一个额外的表,这个表会保存下一个数字主键值,每行对应一个实体类,在INSERT之前.该表将被读取并做相应的更新.

    相关文章

      网友评论

        本文标题:Hibernate笔记(映射持久化类)

        本文链接:https://www.haomeiwen.com/subject/rhzujxtx.html