1

我目前有以下持久性 xml 文件,我正在使用它来创建两个数据库,一个包含一个用户表(从 java 实体类映射),另一个映射一个怪物表(如上)。

我对 JPA 完全陌生,这是我第一次使用它,到目前为止,我已经设法将以下 xml 代码拼凑在一起:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence  http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
  <persistence-unit name="monsters" transaction-type="RESOURCE_LOCAL">
    <class>databaseManagement.Monster</class>
    <properties>
      <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
      <property name="hibernate.connection.username" value=""/>
      <property name="hibernate.connection.password" value=""/>
      <property name="hibernate.connection.url" value="jdbc:hsqldb:monsters"/>
      <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
      <property name="hibernate.hbm2ddl.auto" value="update"/>
    </properties>
  </persistence-unit>
  <persistence-unit name="users" transaction-type="RESOURCE_LOCAL">
    <class>databaseManagement.User</class>
    <properties>
      <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
      <property name="hibernate.connection.username" value=""/>
      <property name="hibernate.connection.password" value=""/>
      <property name="hibernate.connection.url" value="jdbc:hsqldb:users"/>
      <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
      <property name="hibernate.hbm2ddl.auto" value="update"/>
    </properties>
  </persistence-unit>
</persistence>

但是,我想要的是 user 和 monster 表是单个数据库中的两个表,而不是当前两个单独数据库中的两个表,但是我不知道该怎么做。

非常感谢,我真的很想知道这是如何完成的,感谢您的帮助:)

4

1 回答 1

2

这很简单,您必须删除一个持久单元并在剩余单元中添加删除类。

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence  http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
  <persistence-unit name="monsters" transaction-type="RESOURCE_LOCAL">
    <class>databaseManagement.Monster</class>
    <class>databaseManagement.User</class>
    <properties>
      <property name="hibernate.connection.driver_class" value="org.hsqldb.jdbcDriver"/>
      <property name="hibernate.connection.username" value=""/>
      <property name="hibernate.connection.password" value=""/>
      <property name="hibernate.connection.url" value="jdbc:hsqldb:monsters"/>
      <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
      <property name="hibernate.hbm2ddl.auto" value="update"/>
    </properties>
  </persistence-unit>
</persistence>

在这里查看更多示例

于 2013-01-19T21:02:53.023 回答