1

这是正确的用法吗?

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
    <persistence-unit name="UserBean">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <class>com.tugay.registiration.UserBean</class>
        <properties>
            <property name="javax.persistence.jdbc.driver"
                      value="com.mysql.jdbc.Driver"/>
            <property name="javax.persistence.jdbc.url"
                      value="jdbc:mysql://localhost:3306/sampleapplication"/>
            <property name="javax.persistence.jdbc.user" value="root"/>
            <property name="javax.persistence.jdbc.password" value="****"/>
        </properties>
    </persistence-unit>

    <persistence-unit name="CustomerBean">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <class>com.tugay.registiration.CustomerBean</class>
        <properties>
            <property name="javax.persistence.jdbc.driver"
                      value="com.mysql.jdbc.Driver"/>
            <property name="javax.persistence.jdbc.url"
                      value="jdbc:mysql://localhost:3306/sampleapplication"/>
            <property name="javax.persistence.jdbc.user" value="root"/>
            <property name="javax.persistence.jdbc.password" value="****"/>
        </properties>
    </persistence-unit>

</persistence>
4

1 回答 1

0

无论如何,既然您正在写入同一个数据库,为什么还要麻烦而不是将所有类简单地添加到一个中呢?

但如果这是你需要的。如果您想在同一个文件中包含两个单元,请<exclude-unlisted-classes>true</exclude-unlisted-classes>在 class 标记之后添加以排除那些不属于该持久性单元的单元。否则持久性 A 可以插入持久性 B 的实例。

在我看来,你最好有两个独立persistence.xml的 . 在不同的文件夹或不同的名称。

请记住,您将需要两个单独EntityManagers的 和contexts

<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
    <persistence-unit name="UserBean">
        <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <class>com.tugay.registiration.UserBean</class>
        <class>com.tugay.registiration.CustomerBean</class>
        <properties>
            <property name="javax.persistence.jdbc.driver"
                  value="com.mysql.jdbc.Driver"/>
            <property name="javax.persistence.jdbc.url"
                  value="jdbc:mysql://localhost:3306/sampleapplication"/>
            <property name="javax.persistence.jdbc.user" value="root"/>
            <property name="javax.persistence.jdbc.password" value="****"/>
        </properties>
    </persistence-unit>
 </persistence>
于 2013-05-16T23:10:37.297 回答