论坛首页 Java企业应用论坛

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

浏览 53111 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-09-13  
呵呵,ls挺不服气啊,看来要拿点铁证出来了

引用Microsoft Dynamics CRM 3.0产品特性上的一段话,http://www.microsoft.com/china/dynamics/product/crm3.mspx
引用
方便的自定义,可针对您的业务工作流程来自定义 Microsoft Dynamics CRM,方法如下:添加自定义对象和活动、为不同用户设计自定义视图,以及将业务逻辑应用到 CRM 中。


来自salesforce,他们提供试用,你可以申请个帐号去看看


0 请登录后投票
   发表时间:2008-09-13  
javaTo 写道
呵呵,ls挺不服气啊,看来要拿点铁证出来了

引用Microsoft Dynamics CRM 3.0产品特性上的一段话,http://www.microsoft.com/china/dynamics/product/crm3.mspx
引用
方便的自定义,可针对您的业务工作流程来自定义 Microsoft Dynamics CRM,方法如下:添加自定义对象和活动、为不同用户设计自定义视图,以及将业务逻辑应用到 CRM 中。


来自salesforce,他们提供试用,你可以申请个帐号去看看



确实不一定是动态建表,自定义对象,字段可以通过设计来实现
0 请登录后投票
   发表时间:2008-09-13  
jacklondon 写道
"添加自定义对象和活动" 不等于运行时创建表啊!!
不要故意混淆概念!!请给出 Microsoft Dynamics CRM 3.0 运行时创建表的步骤!


哥们啊,你真是给我找事干。

介于本主题的纯洁性问题,本人另开一贴,有兴趣的过来拍砖
http://www.iteye.com/topic/241508
0 请登录后投票
   发表时间:2008-09-14  
关于自定义实体功能(公司没有用HIBERNATE来做ORM,软件构建那时Hibernate,对数据库的横切,竖切支持有限)。
LZ的文章写的不错,看过了。谢谢分享。

有句话叫:没有调查就没有发言权!
无论是动创建表还是动态创建视图,都是一种改变或保存数据集的方式。
至于是否动态创建表,请自定义一个实体之后进入CRM的DB去查看是否有新表或者新的视图产生。

个人观点动态创建表或动态创建视图均可做为一种解决问题的手段,据不同情况应用而生。
比如:客户要创建一个公司的内部考勤表,这个表只与用户关联,与其他的表不再关联的时候,就可以创建表啊。
动态创建表,是指可以动态创建表,在需要的时候创建,来存储相关数据,并非每次都动态创建。
楼上有人争辨说一定要看到动态创建的语句,那么请先自行试验一下,当在自定义实体的时候,看看动态创建语句是否出现在 MS CRM 的 DB 的事件探查器中。我想应该可以看到的(个人判断,不方便装MS CRM,请见谅)。其次,个人觉得,自定义实体的相关信息(实体名,字段,字段类型等)应该存储在另一张(些)自定义实体的表中。

我想楼上觉得有争议的javaeyer肯定没有自己研究或者实现过自定义实体。

其实这些思路,已经说的相当清晰了。你可以借着我的思路实现你的自定义实体功能。

至于LZ的主题,以及各楼的发言,《Java Persistence with Hibernate》上有这么一句话"Java developers blame relateional technology for the mismatch; data professionals blame object technology." 对于楼上的争议形容的如此准确(一个从SQL的角度讲动态创建表不是建议做的,一个从开发的角度来讲动态创建表帮助我们实现了某种重要的功能)。

if you have good choice, please write it out!


2 请登录后投票
   发表时间:2008-09-14  
soci 写道
研究过几个商用产品的数据库结构,动态建实体的没见过,
一般属性都是是做把列存成记录的方式。金钱、数字的都是冗余列,T1,T2,T3这样。



动态创建列的实在是司空见惯的事情。

楼主能否列一下,你研究过哪些商用产品的数据库结构呢?都研究什么样的功能了呢?有没有自定义实体的啊?
能否麻烦LZ抽时间列出来,让javaeyer们开开眼界?
0 请登录后投票
   发表时间:2008-09-14  
comeon 写道
soci 写道
研究过几个商用产品的数据库结构,动态建实体的没见过,
一般属性都是是做把列存成记录的方式。金钱、数字的都是冗余列,T1,T2,T3这样。



动态创建列的实在是司空见惯的事情。

楼主能否列一下,你研究过哪些商用产品的数据库结构呢?都研究什么样的功能了呢?有没有自定义实体的啊?
能否麻烦LZ抽时间列出来,让javaeyer们开开眼界?


说个还有点印象的,有一个XXXXX软件,这个系统安装完只是个骨架不能立刻给用户使用,需要针对客户的业务配置和开发,配置就是自定义实体,自定义字段,开发就是用它自带的DSL语言写规则,这个过程是用dev角色登陆进去一切都在WEB界面上完成。
实体结构表和实体值是分开存放的。实体结构:字段名,字段类型,所属实体,实体值表里是字段主键,字符型值,数字型值,XML值,公式值,TREE值,用户输入的值根据数据类型保存到不同的列,和其它的实体交互用系统提供的DSL语言完成。
感觉系统维护一个元数据结构,结构还是算清晰。

当时也有过疑问,为什么不通过动态建物理表实现这功能。

0 请登录后投票
   发表时间:2008-09-14  
重复了
0 请登录后投票
   发表时间:2008-09-15  
panlw 写道
Spring的JDBC封装即简单又灵活,还有S2Dao也不错的。

喜欢简单可以考虑看看iBatis,值得一看
0 请登录后投票
   发表时间:2008-09-15  
以前对Freemarker的认识停留在Web上面,认为那玩艺就是个视图表现的东西, 前段时间作了个小的分析规则的东西,用它来生成规则模板, 对Freemarker的模板引擎实在是感动的想哭.....

言归正传, 我很希望了解到LZ在实际生产环境中这样做有没有出过什么问题? 稳定性如何?

0 请登录后投票
   发表时间:2008-09-20  
还是没搞懂,按照LZ这个解释若不重新做SessionFactory,若新增了实体类,是肯定要重启系统的,重启之后才会生成正真的表或者字段,不知道我这样理解对不对?

显示开发中应该没这种重启系统的可能。
0 请登录后投票
论坛首页 Java企业应用版

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