相关文章推荐
挂过科的香菜  ·  Enumerate BLE devices ...·  10 月前    · 
1.@Entity注解没有加
2.@Table注解没有加(如数据库表与实例类名称一不致时,必须指定表名)
3.@Id和@GeneratedValue(strategy = GenerationType.IDENTITY)主键生成组合使用
备注:主键生成策略四种:
	IDENTITY(主键由数据库自动生成)
	AUTO(主键由程序控制)
	SEQUENCE(根据底层数据库的序列来生成主键,条件是数据库支持序列)
	TABLE(使用一个特定的数据库表格来保存主键)
4.引入包错误,以上注解都是在javax.persistence.*包下
Caused by: org.hibernate.AnnotationException: No identifier specified for entity: com.wuye.xxx

Caused by: org.hibernate.AnnotationException: No identifier specified for entity: com.wuye.domain.WyHousei

解决Entity 实体类中加了@Id 注解后仍然出现org.hibernate.AnnotationException: No identifier specified for entity 错误

启动报错如下图所示: 解决方案: 查看网上的资料,大部分都说在实体类中没有添加加主键的注解@Id,这个是必须的。但是我的实体类中明明已经添加了@Id,为什么还会报这个错误呢? 后来检查了很久,发现是我import的包出现了错误,正确的应该是import javax.persistence.Id 而我

org.hibernate.AnnotationException: No identifier specified for entity: cn.itcast.domain.Counter

因为我的hibernate映射表没有主键所以报这个错。 解决方案是: 1、创建一个主键 2、hibernate处理无主键的表的映射问题,其实很简单,就是把一条记录看成一个主键,即组合主键<composite-id>。 注意:使用虚拟联合主键的话,实体类必须实现序列化接口: org.hibernate