其实我也不知道是不是映射文件问题
下面一段时customer.hbm.xml的一个映射文件,有关联的表,都是many-to-one
奇怪的是查询customer的时候,只要跟这customer表有关联的表的某个字段都会变成0 不知道什么原因。
比如:<many-to-one name="comeCity",这张表的deleteMark字段的值变成了0 ,其他的表的这个字段也都变成了0,检查下来不知道什么原因,不知道各位有没有碰到类似的问题。
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.sinews.insurance.entity">
<class name="Customer" table="Customer">
<id column="CustomerNo" name="customerNo" type="java.lang.Integer">
<generator class="native"/>
</id>
<!-- 映射普通属性 -->
<property column="customerSexNo" name="customerSexNo" not-null="true" type="java.lang.Integer"/>
<property column="customerCode" length="32" name="customerCode" not-null="true" type="java.lang.String"/>
<property column="customerName" length="64" name="customerName" not-null="true" type="java.lang.String"/>
<property column="customerID" length="32" name="customerID" type="java.lang.String"/>
<property column="contactPeople" length="20" name="contactPeople" type="java.lang.String"/>
<property column="contactPhone" length="20" name="contactPhone" type="java.lang.String"/>
<property column="birthday" length="23" name="birthday" type="java.lang.String"/>
<many-to-one name="careerKind" column="careerKindNo" class="CareerKind" lazy="false"/>
<many-to-one name="jobTitle" column="jobTitleNo" class="JobTitle" lazy="false"/>
<property column="phoneMobile" length="20" name="phoneMobile" type="java.lang.String"/>
<property column="phoneOffice" length="20" name="phoneOffice" type="java.lang.String"/>
<property column="phoneHome" length="20" name="phoneHome" type="java.lang.String"/>
<property column="phoneFax" length="20" name="phoneFax" type="java.lang.String"/>
<property column="email" length="40" name="email" type="java.lang.String"/>
<many-to-one name="paperProvince" column="paperProvince" class="Province" lazy="false"/>
<many-to-one name="paperCity" column="paperCity" class="City" lazy="false"/>
<property column="paperAddress" length="64" name="paperAddress" type="java.lang.String"/>
<property column="paperZipCode" length="6" name="paperZipCode" type="java.lang.String"/>
<many-to-one name="comeProvince" column="comeProvince" class="Province" lazy="false"/>
<many-to-one name="comeCity" column="comeCity" class="City" lazy="false"/>
<property column="comeAddress" length="64" name="comeAddress" type="java.lang.String"/>
<property column="comeZipCode" length="6" name="comeZipCode" type="java.lang.String"/>
<many-to-one name="customerLevel" column="customerLevelNo" class="CustomerLevel" lazy="false"/>
<property column="lastContactDate" length="23" name="lastContactDate" type="java.lang.String"/>
<many-to-one name="customerKind" column="customerKindNo" class="CustomerKind" lazy="false"/>
<property column="customerStatusNo" name="customerStatusNo" type="java.lang.Integer"/>
<property column="customerNote" length="256" name="customerNote" type="java.lang.String"/>
<many-to-one name="customerOrigin" column="customerOriginNo" class="CustomerOrigin" lazy="false"/>
<many-to-one name="warehouse" column="warehouseNo" class="Warehouse" lazy="false" outer-join="true" />
<property column="buildDate" length="23" name="buildDate" type="java.lang.String"/>
<many-to-one name="buildWarehouse" column="buildWarehouseNo" class="Warehouse" lazy="false"/>
<many-to-one name="buildPerson" column="buildPersonNo" class="Person" lazy="false"/>
<property column="deleteMark" name="deleteMark" not-null="true" type="java.lang.Integer"/>
<property column="uPersonNo" name="uPersonNo" not-null="true" type="java.lang.Integer"/>
<property column="uDate" name="uDate" length="23" not-null="true" type="java.lang.String"/> </class>
</hibernate-mapping>
下面一段时customer.hbm.xml的一个映射文件,有关联的表,都是many-to-one
奇怪的是查询customer的时候,只要跟这customer表有关联的表的某个字段都会变成0 不知道什么原因。
比如:<many-to-one name="comeCity",这张表的deleteMark字段的值变成了0 ,其他的表的这个字段也都变成了0,检查下来不知道什么原因,不知道各位有没有碰到类似的问题。
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.sinews.insurance.entity">
<class name="Customer" table="Customer">
<id column="CustomerNo" name="customerNo" type="java.lang.Integer">
<generator class="native"/>
</id>
<!-- 映射普通属性 -->
<property column="customerSexNo" name="customerSexNo" not-null="true" type="java.lang.Integer"/>
<property column="customerCode" length="32" name="customerCode" not-null="true" type="java.lang.String"/>
<property column="customerName" length="64" name="customerName" not-null="true" type="java.lang.String"/>
<property column="customerID" length="32" name="customerID" type="java.lang.String"/>
<property column="contactPeople" length="20" name="contactPeople" type="java.lang.String"/>
<property column="contactPhone" length="20" name="contactPhone" type="java.lang.String"/>
<property column="birthday" length="23" name="birthday" type="java.lang.String"/>
<many-to-one name="careerKind" column="careerKindNo" class="CareerKind" lazy="false"/>
<many-to-one name="jobTitle" column="jobTitleNo" class="JobTitle" lazy="false"/>
<property column="phoneMobile" length="20" name="phoneMobile" type="java.lang.String"/>
<property column="phoneOffice" length="20" name="phoneOffice" type="java.lang.String"/>
<property column="phoneHome" length="20" name="phoneHome" type="java.lang.String"/>
<property column="phoneFax" length="20" name="phoneFax" type="java.lang.String"/>
<property column="email" length="40" name="email" type="java.lang.String"/>
<many-to-one name="paperProvince" column="paperProvince" class="Province" lazy="false"/>
<many-to-one name="paperCity" column="paperCity" class="City" lazy="false"/>
<property column="paperAddress" length="64" name="paperAddress" type="java.lang.String"/>
<property column="paperZipCode" length="6" name="paperZipCode" type="java.lang.String"/>
<many-to-one name="comeProvince" column="comeProvince" class="Province" lazy="false"/>
<many-to-one name="comeCity" column="comeCity" class="City" lazy="false"/>
<property column="comeAddress" length="64" name="comeAddress" type="java.lang.String"/>
<property column="comeZipCode" length="6" name="comeZipCode" type="java.lang.String"/>
<many-to-one name="customerLevel" column="customerLevelNo" class="CustomerLevel" lazy="false"/>
<property column="lastContactDate" length="23" name="lastContactDate" type="java.lang.String"/>
<many-to-one name="customerKind" column="customerKindNo" class="CustomerKind" lazy="false"/>
<property column="customerStatusNo" name="customerStatusNo" type="java.lang.Integer"/>
<property column="customerNote" length="256" name="customerNote" type="java.lang.String"/>
<many-to-one name="customerOrigin" column="customerOriginNo" class="CustomerOrigin" lazy="false"/>
<many-to-one name="warehouse" column="warehouseNo" class="Warehouse" lazy="false" outer-join="true" />
<property column="buildDate" length="23" name="buildDate" type="java.lang.String"/>
<many-to-one name="buildWarehouse" column="buildWarehouseNo" class="Warehouse" lazy="false"/>
<many-to-one name="buildPerson" column="buildPersonNo" class="Person" lazy="false"/>
<property column="deleteMark" name="deleteMark" not-null="true" type="java.lang.Integer"/>
<property column="uPersonNo" name="uPersonNo" not-null="true" type="java.lang.Integer"/>
<property column="uDate" name="uDate" length="23" not-null="true" type="java.lang.String"/> </class>
</hibernate-mapping>
抛弃xml好多年