2008年10月

可恶的蟑螂

标签:蟑螂 

     似乎自从搬家过来后,蟑螂就一直没怎么断过

     期间也用了不少的药,什么诱饵,什么熏的.......但似乎用处都不大,虽然也能毒到那么几只,但还是解决不了问题

     这几天似乎更是猖獗了,经常看到大大的家伙在地上爬,真可恶

     宝宝妈说用“敌敌畏”的效果很好,但因为有了昕昕,所以还是算了,不用那玩意了

     看来,还是得想其它的办法

     唉,这就是老房子的缺点.......

Hibernate实体对象继承的映射

标签:hibernate 

     如果实体之间存在继承关系,如User和Student,Teacher,那么对应到数据库表的hibernate映射有3种方式:

     1.每个具体类一个表:如上例子,就对应3张表,3个表之间是独立的。可以使用<union-subclass>来映射其关系,还可以直接写3个独立的<class>来映射。用<union-subclass>进行映射,会减小配置文件的大小,但必须要求三个实体的公共属性在数据库中字段名要一致。

    2.所有具有继承关系的实体一张表。可以使用<subclass>来进行映射,Chlid表只需要映射自己独立的字段就行了,但在数据库中会有冗余的字段,Student和Teacher实体自己的属性都需要在一张表中,而且表中还需要有一个字段来标识该记录是哪个实体的。

    3.每个子类一个表。可以使用<joined-subclass>来进行映射,User表只存公共的字段,而Student和Teacher表分别存自己的字段,但他们各有一个外键和User表相关联。

    比较这3种方式,第3种实现应该是最合理的,它的配置相对比较少,而且数据库表结构和字段均没有冗余,但其实现查询是稍微麻烦一些,需要左连接,insert和update时均需要修改2张表的内容。

 

最新文章

最近回复

  • feifei435:这两个URI实际是不一样的
  • zsy: git push origin 分支 -f 给力!
  • 冼敏兵:简单易懂,good fit
  • Jack:无需改配置文件,看着累! # gluster volume se...
  • Mr.j:按照你的方法凑效了,折腾死了。。。。
  • zheyemaster:补充一句:我的网站路径:D:\wamp\www ~~菜鸟站长, ...
  • zheyemaster:wamp2.5(apache2.4.9)下局域网访问403错误的...
  • Git中pull对比fetch和merge | 炼似春秋:[…] 首先,我搜索了git pull和git fe...
  • higkoo:总结一下吧, 性能调优示例: gluster volume s...
  • knowaeap:请问一下博主,你维护的openyoudao支持opensuse吗

分类

归档

其它