hibernate - hibernate 映射失败 : An association from the table X refers to an unmapped class Y

标签 hibernate hibernate-mapping pojo hbm

嗨,我正在尝试映射这个 pojo Rent 类来创建他的 hibernate 映射文件。

Rent.java (POJO):

  public class Rent implements Serializable {

     private static final long serialVersionUID = 1L;

       Employee employee;
       Client client;
       Car car;

    /* + getter and setter... */
  } 

我的目的是创建网络应用程序,用户可以在其中设置哪个员工向客户租了车。所以这是我尝试过的实现

租金.hbm.xml :
<hibernate-mapping>
  <class name="com.google.musicstore.domain.Rent" table="RENT">
    <id name="id" column="RENT_ID">
       <generator class="native"/>
    </id>
    <one-to-one name="car"  class="com.project.domain.Car"
       cascade="save-update">
    </one-to-one>
    <one-to-one name="client"  class="com.project.domain.Client"
       cascade="save-update">
    </one-to-one>
    <many-to-one name="employee"  class="com.project.domain.Employee"
       cascade="save-update">
    </many-to-one>
  </class>
</hibernate-mapping>

但它给了我这个错误:
   [java] Initial SessionFactory creation failed.org.hibernate.MappingException: An association from the table RENT refers to an unmapped class: com.project.domain.Employee

我究竟做错了什么?感谢您的帮助。

我还映射了 hibernate.cfg.xml 中的所有实体:
    <mapping resource="com/project/carRentalAgency/domain/Employee.hbm.xml"/>
    <mapping resource="com/project/carRentalAgency/domain/Client.hbm.xml"/>
    <mapping resource="com/project/carRentalAgency/domain/Car.hbm.xml"/>
    <mapping resource="com/project/carRentalAgency/domain/Rent.hbm.xml"/>

[编辑] 根据要求,我添加了文件
员工.hbm.xml
   <hibernate-mapping>
       <class name="com.project.carRentalAgency.domain.Employee" table="EMPLOYEE">
            <id name="id" type="long" access="field">
                <column name="ID" />
                <generator class="increment" />
            </id>
            <property name="name" type="java.lang.String" access="field">
                <column name="EMPLOYEE_NAME" />
           </property>
           <property name="surname" type="java.lang.String">
                <column name="EMPLOYEE_SURNAME" />
           </property>
           <property name="username" type="java.lang.String">
                <column name="EMPLOYEE_USERNAME" />
           </property>
           <property name="password" type="java.lang.String">
                <column name="EMPLOYEE_PASSWORD" />
           </property>

      </class>
   </hibernate-mapping>

最佳答案

我发现这个错误的发生通常是因为 hibernate 文件 classname.hbm.xml 属性的构建操作未设置为嵌入式资源。

关于hibernate - hibernate 映射失败 : An association from the table X refers to an unmapped class Y,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19633321/

相关文章:

java - 如何在 Spring Boot 中限制仅 5 个设备的登录?

java - LazyCollectionOption.EXTRA 与 Spring 代理?

spring - Mybatis映射器返回空值。在 Spring -rest-mybatis-mysql-gradle

java - 处理JPA的@Column(unique = true)异常

java - Hibernate 不将实体链接到 Generic

postgresql - 按 ASC 排序比按 DESC 排序快 100 倍?为什么?

java - 如何在 hibernate 中正确设置双向关联@OneToMany

java - 如何删除孤立记录?

java - 重载 Hibernate 映射 POJO

java - 如何保存Pojo Gson中不存在的字段