JPA学习---第四节:JPA实例与JPA主键生成策略
2014-11-06 19:23
351 查看
1、编写实体类,代码如下:
@Id用于标记属性的主键
@GeneratedValue
JPA提供的四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO.
-TABLE:使用一个特定的数据库表格来保存主键。
-SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
-IDENTITY:主键由数据库自动生成(主要是自动增长型)
-AUTO:主键由程序控制(也是默认的,在指定主键时,如果不指定主键生成策略,默认为AUTO)
2、单元测试类,代码如下:
(1)、表什么时候被创建?
在执行完一下语句的时候表被创建:
EntityManagerFactory factory = Persistence.createEntityManagerFactory("learn_jpa");
如果表没有被创建,则说明些的 Entity bean 有问题。
package learn.jpa.bean; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; @Entity public class Person { @Id @GeneratedValue private Integer id; private String name; public Person(){} public Person(String name){ this.name = name; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
@Id用于标记属性的主键
@GeneratedValue
JPA提供的四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO.
-TABLE:使用一个特定的数据库表格来保存主键。
-SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
-IDENTITY:主键由数据库自动生成(主要是自动增长型)
-AUTO:主键由程序控制(也是默认的,在指定主键时,如果不指定主键生成策略,默认为AUTO)
2、单元测试类,代码如下:
package learn.jpa.junit.test; import static org.junit.Assert.*; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; import learn.jpa.bean.Person; import org.junit.Test; public class PersonTest { @Test public void save(){ EntityManagerFactory factory = Persistence.createEntityManagerFactory("learn_jpa"); EntityManager em = factory.createEntityManager(); em.getTransaction().begin(); // 开启事务 em.persist(new Person("hwl")); em.getTransaction().commit(); em.close(); factory.close(); } }
(1)、表什么时候被创建?
在执行完一下语句的时候表被创建:
EntityManagerFactory factory = Persistence.createEntityManagerFactory("learn_jpa");
如果表没有被创建,则说明些的 Entity bean 有问题。
相关文章推荐
- JPA学习笔记(4)——使用Table策略来生成主键
- JPA学习笔记(4)——使用Table策略来生成主键
- JPA基础(四):第一个JPA实例与JPA主键生成策略
- 使用注解风格学习Hibernate和JPA的主键生成策略
- 使用注解风格学习Hibernate和JPA的主键生成策略
- JPA实体注解与hibernate主键生成策略
- Hibernate学习_003_Hibernate中常用的主键生成策略总结(上)XML方式
- JPA实体注解与hibernate主键生成策略
- Hibernate 学习笔记-1-3(Hibernate的基本映射以及几种主键生成策略的测试)
- JPA主键生成策略 @GeneratedValue @SequenceGenerator @GenericGenerator
- JPA 主键生成策略
- Follow Me:深入浅出学习Hibernate四:主键生成策略
- JPA 映射主键生成策略
- JPA主键生成器和主键生成策略
- 【hibernate学习之路3】Hibernate核心接口,主键生成策略
- JPA的主键生成策略
- Jpa主键UUID生成策略
- 基于annotation的JPA和hibernate主键生成策略
- Java 持久化技术规范(JPA )中的主键生成策略
- Hibernate的主键生成策略学习笔记