论坛首页 Java企业应用论坛

Hibernate自定义表单完全解决方案(无需重置SessionFactory)

浏览 53110 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-07-04  
liutianhao 写道
LZ,包是有冲突的,后来换成ASM3.0.jar包,把ClassWriter cw = new ClassWriter(false)中的‘false’换成‘0’了
到最后运行到((SessionFactoryImpl)factory).addPersistentClass(model, mapping)这步的时候过不去了
你说问题出在哪里呢?


问题发现了,原来model.getCacheConcurrencyStrategy()得到的值是null,该怎么觉解啊?
0 请登录后投票
   发表时间:2008-07-07  
atianchen 写道
		POBuildUtil util = new POBuildUtil();
		util.build(rc.getClassName(),"E:\\cpc\\source\\cooperateCore\\com\\mit\\test\\Person.class",list);
		//实例化一个person
		Object person = Class.forName("com.mit.test.Person").newInstance();//hbmcls.newInstance();
		


楼主你确定这里不会报错?明显是两个不同的ClassLoader啊,
自定义POBuildUtil创建和装载的类,在当前ClassLoader怎么可能用forName装载得到
0 请登录后投票
   发表时间:2008-07-07  
我们的项目实现了动态sql的查询,是我们项目经理实现的,牛人,呵呵
0 请登录后投票
   发表时间:2008-07-08  
抛去实用性不说,楼主很强的技术功底,收了
0 请登录后投票
   发表时间:2008-07-17  
这个需求很有必要,我也研究了下
http://www.infoq.com/cn/articles/hibernate-custom-fields
这也是一种实现方式。

二年前也曾试写过另一种将数据库表结构横加一系统附加属性表的写法。
总之两种方案:

一、动态建表,动态扩充
二、附加系统属性表

LZ的属于第一种吧

我还真想高手们帮忙权衡一下
0 请登录后投票
   发表时间:2008-07-17  
我06年写过hibernate延迟加载模块,基于hibernate 2.1.6的。

楼主的一些方法扩展和我那个模块重合。
http://blog.csdn.net/cm4ever/archive/2006/06/14/795833.aspx

当时也发到这里来过,无人问津,时代8同啊。
0 请登录后投票
   发表时间:2008-07-18  
先作为知识库做个记号,慢慢再看。
0 请登录后投票
   发表时间:2008-09-11  
jacklondon 写道
gblyh 写道
jacklondon 写道
"最近开发的一个系统,需要在不更改代码和重启系统的情况下提供对用户自动建表的支持"----就冲这句话,很多时候就可以直接枪毙掉这个系统了。

很多内容管理系统的设计思路都是基于表结构的变化来适应复杂的非结构化数据的,像IBM的CM,EMC2的Documental(可能拼错了),相比于扩展属性的表结构设计,大数据量的情况下动态建表的方法可以减少数据行数。也更利于优化查询

拜托!!我所知道的排在前几名的开源内容管理系统,都没有动态建表!!


CMS了解不多,不过你去看看Salesforce、Microsoft Dynamics CRM、Oracle CRM/ERP、SAP CRM/ERP 应用型产品,哪个不是需要动态建立实体的
0 请登录后投票
   发表时间:2008-09-11  
研究过几个商用产品的数据库结构,动态建实体的没见过,
一般属性都是是做把列存成记录的方式。金钱、数字的都是冗余列,T1,T2,T3这样。
0 请登录后投票
   发表时间:2008-09-12  
已经实现无需修改源码,无需POJO的自定义方式

忍不住要提一下《Java Persistence with Hibernate中文版Hibernate实战》这本书,写的非常好,翻译质量也不错。
虽然有点贵(公司买的),但绝对是值的
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics