инструменты гибернации toString и метод равных - PullRequest
0 голосов
/ 24 января 2012

Ниже приведен мой файл отображения гибернации, который я хочу сгенерировать методом toString и equals, используя hibernate tool муравья задача.

<class name="org.hibernate.db.Country" table="country" catalog="world">
    <meta attribute="use-in-tostring">true</meta>
    <meta attribute="use-in-equals">true</meta>
    <id name="code" type="string">
        <column name="Code" length="3" />
        <generator class="assigned" />
    </id>      
</class>

но я не могу сгенерировать метод toString или equals, есть ли что-то не так в этом файле отображения.

Я проверил, что файлы hibernate-mapping-3.0.dtd и hibernate-reverse-engineering-3.0.dtd обновлены.

С наилучшими пожеланиями,
Вивек С. Шах

1 Ответ

0 голосов
/ 14 июля 2015

Это может быть потому, что вы пропустили свойство name = "country" на уровне класса.

Я подтвердил в hibernate 4 , добавив метаданные в файл отображения hiernate, равно иМетоды хэш-кода создаются, как и ожидалось.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class entity-name="com.hrdb.Employee" name="Employee" table="EMPLOYEE" schema="PUBLIC">
        <meta attribute="use-in-tostring">true</meta>
        <meta attribute="use-in-equals">true</meta>
        <id name="eid" type="integer">
            <column name="EID" length="255" not-null="true" precision="19"/>
            <generator class="identity"/>
        </id>
        <property name="firstname" type="string">
            <column name="FIRSTNAME" length="255" not-null="false" precision="19"/>
        </property>

Вы также можете определить эти метаданные на уровне свойства.

<property name="name" type="string">
      <meta attribute="use-in-tostring">true</meta>
      <meta attribute="use-in-equals">true</meta>      
</property>
...