小P的专栏

入门资料,图文教程

原创 Hibernate动态模块发布收藏

新一篇: 闲谈orm(Object-Relational Mapping 对象-关系映射) | 旧一篇: Tomcat资源管理器模块发布--动态重载资源

Hibernate在启动时会读入所有配置文件并进行解析,极耗时间。本模块提供一个额外配置,通过此配置可以使hibernate直到使用持久化对象时才解析对应的文件。并在此功能的基础上,加上动态重载改变过的资源功能,如此就可不重启动程序而改变持久化配置。

本次项目sourceforge并未审批通过,2星期了,不理解,因此发在了共创联盟。
共创项目hbn-dyn-mod主页

点击软件包超链接页面可看到我上传的两个文件包。

文档页有使用说明。

文中提到的动态重载没测试过,基本是不可以用的,呵呵。

另外,我发现如果重起了J2EE服务器(如Tomcat),那么你需要注销已在浏览器中登陆的用户,清一下session,不然会出错,可能还有其他缺陷。

这个模块主要是提供延迟加载的思路和实现,我认为他可以很大的提高单元测试和业务模块测试的速度,当然,也节省了很多内存。

good luck!

2006-08-02
sourceforge项目hbn-dyn-mod提供下载。早在1一个月前就已经开通,但比较忙,没时间打理。

2006-08-03
今天发了邮件到hibernate网站,他们的开发人员回复了我...... 他说只有hibernate2的版本,明显是指我太小气了,居然不提供hibernate3的包。再埋怨我没有提供patch包,我想hibernate2就一个jar,还要啥包?而且我提供了src包的说。
我想了想,看来这家伙挺懒,我回复说本周末写个demo项目来show一把,另外告诉他我虽然写了Hibernate3的代码,不过Hibernate3比较难,而且我很忙,要混饭吃,没时间测试,没把握所以不能上传。
有兴趣的自己去看 位于 mail-archive.com 的hibernate-devel mailing list archives中我发的邮件hibernate dynamic module

2006-08-04
觉得hibernate邮件列表的人比较挑剔,我并不是hibernate的开发人员,开发这个包纯属提供一种延迟加载的视角,他却总是觉得我准备不够,要知道做得十全十美应该是hibernate开发团队应该考虑的而不是我。
相比tomcat的开发人员就比较清楚,发邮件过去他就直接说我的想法比较有趣,简单明了,如此如此。

顺便说一下邮件列表的进展。做晚另一个非hibernate的人员Darryl Miles <darryl-mailinglists@netbauds.net>说了他想到的几种加速方式,实在是不错,看来我抛的砖虽然比较粗糙,但也引来一块玉,回本。他提供的四种方式是:
1.买更好的硬件
2.换存序列化后的hbm文件,这个在hibernate的论坛上有人说了。
3.启动一个后台SessionFactory线程。
4.启动另一个web-app,包含SessionFactory。
我回复时加了一个:
启动一个hibernate SessionFactory,并发布到JNDI,然后通过JNDI api访问。

发表于 @ 2006年06月14日 00:01:00|评论(loading...)|编辑

新一篇: 闲谈orm(Object-Relational Mapping 对象-关系映射) | 旧一篇: Tomcat资源管理器模块发布--动态重载资源

评论

#DoubleHeart 发表于2006-08-04 18:34:00  IP: 210.75.200.*
大哥呀,也真实不能怪人家呀,现在人家Hibernate都已经不提供2.X的下载了,而且如果你不能提供一个可以方便他人应用的补丁,别人基本上就是无从下手——我本来试图把你增加的代码从Hibernate2的代码里剥离出来,结果发现工作量不小,也没敢贸然动手。
其实你应该extends那些类,而不是直接在类里改动,这样即使版本更新,也不会过多的造成升级的不便。
而且洋鬼子就是比较讲究行业规范,你这样,当然人家不满意了。

上面只是我的个人观点,仅供参考。
*^_^*
希望能继续探讨。
MSN:sx_zmy@hotmail.com
email:doubleheartz@gmail.com
#cm4ever 发表于2006-08-04 19:12:00  IP: 61.140.190.*
哈哈,你说得不错。不过虽然extends会比较好,不过还得给它加上Manager接口通过配置寻找子类,本着kiss原则还不如直接改来得明快。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © cm4ever