利用Hibernate 3.6搭建JPA环境很简单,之前的版本的Hibernate还需要引用hibernate-annotaion,hibernate-entitymanager这样的包,3.6的版本里就不需要这些。
1、引入jar文件,包括hibernate运行依赖包和hibernate-jpa-2.0-api-1.0.0.Final.jar,再就是日志包。
具体的需要的jar文件如下:
2、添加配置文件
主要的配置文件就persistenece.xml,在类路径下添加META-INF文件夹,在该文件夹下创建persistence.xml文件。
配置内容如下:
<?xml version="1.0" encoding="UTF-8"?> <persistence xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0"> <persistence-unit name="jpa_demo" transaction-type="RESOURCE_LOCAL"> <properties> <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" /> <property name="hibernate.hbm2ddl.auto" value="create"/> <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" /> <property name="hibernate.connection.username" value="root" /> <property name="hibernate.connection.password" value="woo" /> <property name="hibernate.connection.url" value="jdbc:mysql:///jpa" /> </properties> </persistence-unit> </persistence>
3、实体映射
JPA实体映射提供xml方式和注解方式两种配置方式。
推荐使用的是注解配置,简单方便。
@Entity
@Table
public class Person {
@Id
private String id;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
4、测试代码
public class TestJpa {
private EntityManager em;
@Before
public void init(){
EntityManagerFactory factory=Persistence.createEntityManagerFactory("jpa_demo");
em=factory.createEntityManager();
}
@Test
public void testPersist(){
em.getTransaction().begin();
Person person=new Person();
person.setId("111111");
person.setName("张三");
em.persist(person);
em.getTransaction().commit();
}
}