Конфигурация JPA вторичной таблицы XML - PullRequest
0 голосов
/ 24 июля 2011

Я работаю над проектом, в котором мне нужно сохранить Entity, который нельзя изменить (из библиотеки), поэтому я использую объектный объект сопоставления сущностей XML, как:

public abstract class BaseModel{
    Long uid;
    //getters/setters
}

public abstract class LocaleBaseModel{
    String locale;
    //Other properties, getter/setters
} 

public class Article extends LocaleBaseModel{
    private Long authorId;
    privaet String text;
    //Other properties        
}

<mapped-superclass class="package.BaseModel">
    <attributes>
        <id name="uid">
            <column name="UID" nullable="false" />
            <generated-value strategy="AUTO" />
        </id>
    </attributes>
</mapped-superclass>
<mapped-superclass class="package.LocaleBaseModel">
    <secondary-table name="STableName">
        <primary-key-join-column name="MID" referenced-column-name="UID" />
    </secondary-table>
    <attributes>
        <basic name="locale">
            <column name="LOCALE" updatable="false" nullable="false" />
        </basic>
        <basic name="text">
            <column name="Text" updatable="false" nullable="false" table="STableName" />
        </basic>
    </attributes>
</mapped-superclass>

<entity class="package.child.Article" name="Hadith">
    <table name="TableName" />
    <attributes>

    </attributes>
</entity>

, но как толькоЯ добавляю <secondarytable> Я получаю ошибку, которая сама по себе является довольно понятной:

Я следую по пути, с остальными с весны 3.0.5

  • hibernate-entitymanager-3.6.2
  • hibernate-jpa-2.0-api
  • hibernate-core-3.6.2.Final

1 Ответ

0 голосов
/ 28 июля 2011

в соответствии с orm-схемой

элементы вторичной таблицы предпочитают размещать в элементе

после тега таблицы

<pre> alike &lt;entity>
        &lt;table/>
        &lt;secondary-table/>
        ...

, согласившегося с ошибкойсообщение зашумленное, но это великолепная спецификация схемы.

ys.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...