下面是我想要生成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
答案 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>