hibernate两个主键怎么写映射
数据库表已经建完了,但是在hibernate框架中要写映射一般主键是写在<id></id>中的可是2个主键是不可以写到一起的应该怎么写各位帮帮忙...
数据库表已经建完了,但是在hibernate框架中要写映射 一般主键是写在<id></id>中的 可是2个主键是不可以写到一起的 应该怎么写 各位帮帮忙
展开
5个回答
展开全部
首先纠正你一个错误,一个表里不可能有2个主键!我猜你要说的是2个字段组合成主键,这叫联合主键。hibernate里有联合主键的映射。配置为:
<class name="" table="busin_name" >
<composite-id name="comp_id" class="po的名称">
<key-property name="id" column="id" type="java.lang.Long" length="10" />
<key-property name="business_id" column="business_id" type="java.lang.Long" length="10" />
</composite-id>
<many-to-one name="a" class="a" update="false" insert="false" >
<column name="id " />
</many-to-one>
<many-to-one name="b" class="b" update="false" insert="false" >
<column name="business_ID" />
</many-to-one>
</class>
<class name="" table="busin_name" >
<composite-id name="comp_id" class="po的名称">
<key-property name="id" column="id" type="java.lang.Long" length="10" />
<key-property name="business_id" column="business_id" type="java.lang.Long" length="10" />
</composite-id>
<many-to-one name="a" class="a" update="false" insert="false" >
<column name="id " />
</many-to-one>
<many-to-one name="b" class="b" update="false" insert="false" >
<column name="business_ID" />
</many-to-one>
</class>
展开全部
呵呵,两个主键就是 composite-id 意思就是联合主键
语法如下:
<composite-id>
<key-property name="id1">
<column name="ID1"></column>
</key-property>
<key-property name="id2">
<column name="ID2"></column>
</key-property>
</composite-id>直接配置就行了
语法如下:
<composite-id>
<key-property name="id1">
<column name="ID1"></column>
</key-property>
<key-property name="id2">
<column name="ID2"></column>
</key-property>
</composite-id>直接配置就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个表中怎么可能有两个主键,就像一山不容二虎!建议你配置时,用工具自动生成!工具很方便的!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一个表里有两个主键?....
貌似不叫联合主键 好象是叫复合主键
貌似不叫联合主键 好象是叫复合主键
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我现在也头痛!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询