但是假如我是收件人,那么c_ladingbills对我来说是多余的字段
又假如我是发件人,那么a_ladingbills对我来说也是多余的字段
所以分两个字段不好,但迫不得已。可能我说的太杂乱,其实简单来问就是:
客户实体类:
public class Customer{
......
private Set ladingbills;//客户对应的提货单
}提货单实体:
public class Ladingbill{
......private Customer consigner; // 发件人private Customer addressee; // 收件人
}
说明:收件人和发件人都属于客户类型,客户和提货单是一对多关系,(另外这是一个物流方面的设计)
似乎是很简单的一对多的双向关联的映射,但是具体写起来才发现问题不简单哦!(也许只是对我来说不简单:))
如果是你们,你们会怎么写映射?
请大家写出来一下好吗?
又假如我是发件人,那么a_ladingbills对我来说也是多余的字段
所以分两个字段不好,但迫不得已。可能我说的太杂乱,其实简单来问就是:
客户实体类:
public class Customer{
......
private Set ladingbills;//客户对应的提货单
}提货单实体:
public class Ladingbill{
......private Customer consigner; // 发件人private Customer addressee; // 收件人
}
说明:收件人和发件人都属于客户类型,客户和提货单是一对多关系,(另外这是一个物流方面的设计)
似乎是很简单的一对多的双向关联的映射,但是具体写起来才发现问题不简单哦!(也许只是对我来说不简单:))
如果是你们,你们会怎么写映射?
请大家写出来一下好吗?
<key column=“consigner_id”>和<many-to-one column="consigner_id" >两个column的值是不是得对应一样才能正确的进行外键关联?
也就是说<key column=“”>里的column的值有什么讲究吗?还是说得跟<many-to-one column="" >里的column值一样?
:)
这个问题可以帮忙回答下不?:
<key column=“consigner_id”>和<many-to-one column="consigner_id" >两个column的值是不是得对应一样才能正确的进行外键关联?
也就是说<key column=“”>里的column的值有什么讲究吗?还是说得跟<many-to-one column="" >里的column值一样?
<key column="USERID"/> //自己本表中在数据库的字段名字
<one-to-many class="TPerson"/>
</set>TPerson: <many-to-one name="user"
column="USERID" //外键的在数据库中的字段名字,可以不相同,总之对于好数据库中的字段名字
class="TUser"/>
// 实际我的Person就是多个外键的,但是TUser只用set一次,
<many-to-one name="inputuser" column="INPUTUSERID" class="TUser" />
<many-to-one name="shamDeleteUser" column="SHAMDELETEUSERID" class="TUser" />
<many-to-one name="deleteUser" column="DELETEUSERID" class="TUser" />