hibernate GeneratedValue -- 用 table 来生成主键详解

原文地址:https://www.cnblogs.com/lj95801/p/5003580.html

package org.fiend.entity;

import javax.persistence.*;
import java.io.Serializable;

/**
 * @author fiend 2018/12/5
 */
@Entity
@Table(catalog="public", name="user")
public class User implements Serializable {  //序列化在Jpa需要
    // @Id //主键
    // @GeneratedValue(strategy = GenerationType.IDENTITY) // 自增长 GenerationType.AUTO
    // private Long id;

    // @Column(name = "name", nullable = false, unique = true)
    // @GeneratedValue(strategy = GenerationType.AUTO)
    // AUTO: 由JPA提供者根据数据库自行决定生成算法
    // IDENTITY: 由数据库的自增列提供主键值
    // SEQUENCE: 由数据库 Sequence 对象提供主键值
    // AUTO: 由JPA提供者通过创建数据库来记录生成的主键值

    // @Id是用来标识主键的,而@GeneratedValue则是用来指定主键策略的
    @Id
    @GeneratedValue
    private String name;

    // @Column(name = "count", nullable = false)
    private Integer count;
}

 

你可能感兴趣的:(hibernate)