hibernate工具toString和equals方法生成

时间:2012-01-24 09:48:57

标签: hibernate code-generation reverse-engineering hibernate-tools

下面是我想要生成toString和equals方法的hibernate映射文件 hibernate tool ant task。

<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文件都是最新的。

最诚挚的问候,
Vivek S. Shah

1 个答案:

答案 0 :(得分:0)

可能是因为你在班级错过了name =“country”属性。

我已在 hibernate 4 中验证,通过在hiernate映射文件中添加元数据,equals和hashcode方法正在按预期创建。

arrpointer(1:n)%elementpointer => arr(1:n)

您还可以在属性级别定义这些元数据。

<?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>