Hibernate的一些错误

1.Hibernate配置错误 javax/persistence/Cacheable

Hibernate出现如下错误时 

Exception in thread "main" java.lang.NoClassDefFoundError: javax/persistence/Cacheable 

 是因为缺少了hibernate-distribution-3.6.0-Final\lib\jpa目录下的hibernate-jpa-2.0-api-1.0.0.Fianl.jar,因为该jar包是JPA2.0规范中的东西

 

2.做Hibernate ID生成策略JUnit测试时出现

org.hibernate.HibernateException: identifier of an instance of com.hibernate.model.Person was altered from 1 to 0

 错误时,可能是因为实体类中的set方法漏写了this关键字,如:

	public int getId() {
		return id;
	}

	public void setId(int id) {
		id = id;
	}

 应该改为:

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

3.java.lang.NoSuchMethodError: javax.persistence.OneToOne.orphanRemoval()Z

 

一个简单的一对一联系 两个类 其中一个用了@OnetoOne 注解

 

原因是hibernate的jar包里面加了那个ejb3的jar包与JPA包冲突 ejb删掉就可以了

 

 

 

 

你可能感兴趣的:(java,thread,Hibernate,jpa)