hibernate4实现的JPA2.0规范的集成

1.JPA概述

   JPA(Java Persistence API),其实它就是一种规范(Java持久化接口),而不是什么开发工具,这里用到的hibernate4恰好实现了这一规范。JPA规范的好处就是不依赖于某一个ORM框架(如hibernate)

官方阐述的一些JPA的优势:1 标准化 ;2 对容器级特性的支持;3 简单易用,集成方便 4 可以媲美JDBC的查询能力 5 支持OO的高级特性

2.hibernate4.1.1下载

下载链接:http://ncu.dl.sourceforge.net/project/hibernate/hibernate4/4.1.1.Final/hibernate-release-4.1.1.Final.zip

3.JPA所需的最小jar包配置

 /lib/required/下面所有的jar包是必须的

其次,/lib/jpa/hibernate-entitymanager-4.1.1.Final.jar也拷贝到项目中

项目的创建,以及目录如下:

hibernate4实现的JPA2.0规范的集成_第1张图片

4.编写persistence.xml文件

可以拷贝已有的xml文件,这里实现的是JPA2.0规范



	
		
			
			 
			
			
			
			
			
			
		
	

刚开始,由于参考其它博客(hibernate版本是3.x的,同时jpa是1.0)出现了javax.persistence.PersistenceException异常,原因是javax.persistence.validation.mode默认是auto的,如果不设置为none的话,会到类路径下查找bean-validation**.jar包,如果没有此包,则会出现上述异常

       如果persistence.xml配置没有问题的话,xml文件的图标是会变的,不同于一般的xml文件,注意观察

5.编写实体类

@Entity
public class JMusic {

	@Column(name="jmusicid")
	@Id @GeneratedValue
	private Integer id;//编号
	
	@Column
	private String musicname;
	
	@Column
	private String singer;//歌手
	
	@Column
	private String musicurl;//歌曲网络地址
	
	@Column
	@Temporal(TemporalType.DATE)
	private Date distributeDate;//发布时间
	
	@Column
	private String album;//所属专辑名

这里自己加上get,set方法

6.JUnit测试

public class JpaTest {

	@BeforeClass
	public static void setUpBeforeClass() throws Exception {
	}

	@Test
	public void createTable(){
		//验证表
		EntityManagerFactory factory = Persistence.createEntityManagerFactory("zjMusicJpa");
		factory.close();
	}
}


 

你可能感兴趣的:(hibernate,jpa,hibernate,jpa)