写程序,做产品,过日子

成功其实很简单,就是强迫自己坚持下去

BlogJava 首页 新随笔 联系 聚合 管理
  69 Posts :: 1 Stories :: 92 Comments :: 0 Trackbacks

最近正在做JDO 2.0与Hibernate的方案选择。JDO实现选的是Jpox,个别问题也参看了Bea Kodo 4.1。但是今天发现JDO2.0在一项关键功能上无法满足要求,有可能被直接叫停。

这个功能就是动态O/R Mapping。就是说,在系统运行时,动态生成一份新的O/R Mapping,或者往原来的O/R Mapping中添加字段。并且这些改动,应当无须重启Application Server就能生效。

Hibernate虽然也没有很好的支持这一点,但是提供了可实现的渠道。

1. 重建SessionFactory时可以添加新的Mapping文件。

2. Dynamic Component可以在pojo中将动态字段表达为Map,这样只用修改Mapping文件,不用修改java类。

3. Hibernate 3.2.1还提供不用java类的Mapping方式。在Mapping文件中,只指定entity-name,不指定class,Hiberante就会使用Map来表达它。

Jpox没有提供上面三种渠道中的任何一种。我已经在Jpox forum上发贴问了,不知道什么时候能有答复。

Kodo的文档中也没有直接提到,本想去bea发贴的,但是网速太慢。

posted on 2007-01-24 10:50 Welkin Hu 阅读(672) 评论(0)  编辑  收藏 所属分类: Java

只有注册用户登录后才能发表评论。


网站导航: