专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Java Exception

hibernate hbm异常net.sf.hibernate.MappingException: An association from the table loginuse

发布时间:2010-06-05 12:33:34 文章来源:www.iduyao.cn 采编人员:星星草

public class LoginUser implements java.io.Serializable {
  private String id;
  private User user;
  private String loginname;
  private String passwd;
  }
  public class User implements java.io.Serializable {
  private String userid;
  private String name;
  private int age;
  }
  为了省地,我没有写那些set,get方法
  LoginUser.hbm.xml
  <hibernate-mapping>
  <class name="com.my.test.LoginUser" table="loginuser">
  <id name="id" type="string" >
  <column name="id" sql-type="char(32)" not-null="true"/>
  <generator class="foreign">
  <param name="property">user</param>
  </generator>
  </id>
  <property name="loginname" />
  <property name="passwd" />
 
  <one-to-one name="user" class="com.my.test.User" constrained="true"/>
  </class>
  </hibernate-mapping>
 
  User.hbm.xml
  <class name="com.my.test.User" table="user2">
  <id name="id" type="string" >
  <column name="id" sql-type="char(32)" not-null="true"/>
  <generator class="native"/>
  </id>
  <property name="name" />
  <property name="age" />
  </class>
 
  当我SchemaExport LoginUser.hbm.xml时,总是异常
  [java] net.sf.hibernate.MappingException: An association from the table loginuser refers to an unmapped class: com.my.test.User
  [java] at net.sf.hibernate.cfg.Configuration.secondPassCompileForeignKeys(Configuration.java:682)
  [java] at net.sf.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:666)
  [java] at net.sf.hibernate.cfg.Configuration.generateDropSchemaScript(Configuration.java:459)
  [java] at net.sf.hibernate.tool.hbm2ddl.SchemaExport.<init>(SchemaExport.java:58)
 
  这是为什么? 什么情况总是出这种异常呢?

------解决方法--------------------------------------------------------
LoginUser.hbm.xml
  User.hbm.xml
 
  解析的时候,先解析LoginUser再解析User。而此时User尚未解析,SchemaExport找不到User类,必然报错。

    
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: