Java 我们可以在Hibernate中映射单个映射文件中的所有实体吗?

Java 我们可以在Hibernate中映射单个映射文件中的所有实体吗?,java,hibernate,hibernate-mapping,Java,Hibernate,Hibernate Mapping,我有很多模型实体,比如 class Employee { private Integer id; private String name; } class Address { private Integer id; private String address; } 还有更多 我们能否将所有实体映射到单个hbm xml映射文件中? 我知道这可能不是个好习惯。但我们还能做到吗?如果是,那么如何进行?是。可以使用单个映射文件 大概是这样的: <

我有很多模型实体,比如

class Employee {

   private Integer id;

   private String name;  

}


class Address {

   private Integer id;

   private String address;  

}
还有更多

我们能否将所有实体映射到单个hbm xml映射文件中?
我知道这可能不是个好习惯。但我们还能做到吗?如果是,那么如何进行?

是。可以使用单个映射文件

大概是这样的:

<hibernate-mapping>
    <class name="Employee" table="employee">
        <id name="id" type="java.lang.Integer">
            <column name="id"/>
            <generator class="native"/>
        </id>
        <property name="name" type="java.lang.String">
            <column name="name"/>
        </property>
    </class>

    <class name="Address" table="address">
        <id name="id" type="java.lang.Integer">
            <column name="id"/>
            <generator class="native"/>
        </id>
        <property name="address" type="java.lang.String">
            <column name="address"></column>
        </property>
    </class>
</hibernate-mapping>

是的,您可以这样做,dtd()允许在
hibernate映射中使用多个类元素

<!ELEMENT hibernate-mapping (
    ...
    (class|subclass|joined-subclass|union-subclass)*,
    ...
)>


甚至文档(,第二个代码块)也将一个
Cat
和一个
Dog
类映射到同一个文件中作为示例。

您的意思是,对于所有想要使用单个
SomeName.hbm.xml
文件的实体,您是否需要进行任何额外的配置?不需要额外的配置