当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
Hibernate复合主键查询
发布时间:2010/5/25 10:35:48 来源:城市学习网 编辑:ziteng
  Hibernate逆向生成无主键的数据表时产生的hbm如:
  <class name="class_name" table="table_name" schema="schema_name">
  <composite-id name="id" class="class_name">
  <key-property name="property_name" type="type_name">
  <column name="column_name" length="20" />
  </key-property>
  </composite-id>
  </class>
  Hibernate不允许无PrimaryKey的ORM,因此会独立生成此对象为ORM的PrimaryKey
  当需要查询此表,如果此对象中有任意一个字段为NULL,则整条记录都为NULL
  因为Hibenrate约束主键不能为空。
  解决办法:可将composite-id标签里可能会为空的字段提取到composite-id外,
  将数据表所对应的POJO添加字段,字段为提取到composite-id标签外的字段属性
  HQL查询时直接用对应的类索引属性查询,无需经过第三方生成类。
广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved