Hibernate关系映射
组件映射
Xdoclet对组件的映射是这样写的
在数据库中,T_Customer会生成home_Address和com_Address字段
One-to-one外键关联
Customer.java
即在T_Customer表中设置T_Address的外键
Address.javaCustomerManagerImpl m=new CustomerManagerImpl();public void testAddCustomer() {Bank b=new Bank();b.setName("中国银行");Customer c=new Customer();c.setData(new Date());c.setName("黄骅");b.getCustomers().add(c);c.getBand().add(b);m.addCustomer(c);}
Inverse在哪一方设置为tru都会执行如下sql:
Hibernate: insert into T_Customer (name, data) values (?, ?)
Hibernate: insert into T_Bank (name) values (?)
Hibernate: insert into T_Bank_Customer (bid, cid) values (?, ?)
如果两边都没有设置inferse则默认为false那么两边都管理,导致混乱报异常。如果两都设置为true则会导致任何操作都不触发对关系表的操作,两表的数据添加了,但连接表为空,说明关系没有建立。 1 楼 xiaops2005 2008-06-16 好文章啊! 2 楼 wm920 2008-06-16 早久会了 ···