首页 > 代码库 > Hibernate使用注解时的问题
Hibernate使用注解时的问题
在使用注解进行Hibernate开发时、报了一个如下的错误
Exception in thread "main" org.hibernate.AnnotationException: No identifier specified for entity: com.eyang.hibernate.model.Qygd at org.hibernate.cfg.InheritanceState.determineDefaultAccessType(InheritanceState.java:277) at org.hibernate.cfg.InheritanceState.getElementsToProcess(InheritanceState.java:224) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:775) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processAnnotatedClassesQueue(Configuration.java:3788) at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3742) at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1410) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1844) at QygdTest.main(QygdTest.java:23)
经查证是在Model类中没有给主键添加注解、也就是说在使用Hibernate进行开发时必须指定表的主键才能正常运行、
在对应属性的get方法上添加@Id注解即可
另外还发现了一个现象、即使用xml配置文件和注解进行数据的添加时
若表中有10个字段、Model中也有十个属性与之对应、
在xml文件中、我们可以只写其中的3个或者几个字段则生成的sql中只有对应的这几个字段的值、而没有配置的则不会在sql中生成、
在使用注解时、Model中的十个属性也会全部在sql中生成、
Hibernate使用注解时的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。