论坛首页 Java企业应用论坛

一次小项目的思考

浏览 51999 次
该帖已经被评为良好帖
作者 正文
   发表时间:2009-08-21   最后修改:2009-08-21
数据库已死,标题过大,一个敏感话题,在哪里都引起争执.
起先读到,很有新意,把数据库只当作数据持久的载体,说的不错,所有的业务数据都放进缓存,在内存中去计算.这是一种理想状态,过于极端了,或者说太难做到了.
0 请登录后投票
   发表时间:2009-08-21  
另外所有说数据库摆脱不掉的朋友,数据库已死,不是说不去使用数据库,而是说从数据库出发建模的时代过去了.
3 请登录后投票
   发表时间:2009-08-21  
ray_linn 写道
楼主去用hibernate去做个总分轧平吧,

横向按账户的借贷方,纵向按科目,科目有借方科目,贷方科目,借贷双方科目,某些科目的借方 要与另外一些科目的贷方相当。

这就好比说“楼主去用hibernate去做个BI吧、还有数据仓库、数据挖掘”
hibernate并不妨碍你对数据库做这些附加应用,也不妨碍你在同一个项目里用iBatis做OLAP型的功能。
0 请登录后投票
   发表时间:2009-08-21  
daquan198163 写道
ray_linn 写道
楼主去用hibernate去做个总分轧平吧,

横向按账户的借贷方,纵向按科目,科目有借方科目,贷方科目,借贷双方科目,某些科目的借方 要与另外一些科目的贷方相当。

这就好比说“楼主去用hibernate去做个BI吧、还有数据仓库、数据挖掘”
hibernate并不妨碍你对数据库做这些附加应用,也不妨碍你在同一个项目里用iBatis做OLAP型的功能。



你这不就是抬杠:说用hibernate和说对象数据库不就是一会事,进行复杂统计或者报表的时候,面向对象力不从心的地方就是,对象关系负责,形成关系网。
0 请登录后投票
   发表时间:2009-08-21   最后修改:2009-08-21
ray_linn 写道
daquan198163 写道
ray_linn 写道
楼主去用hibernate去做个总分轧平吧,

横向按账户的借贷方,纵向按科目,科目有借方科目,贷方科目,借贷双方科目,某些科目的借方 要与另外一些科目的贷方相当。

这就好比说“楼主去用hibernate去做个BI吧、还有数据仓库、数据挖掘”
hibernate并不妨碍你对数据库做这些附加应用,也不妨碍你在同一个项目里用iBatis做OLAP型的功能。



你这不就是抬杠:说用hibernate和说对象数据库不就是一会事,进行复杂统计或者报表的时候,面向对象力不从心的地方就是,对象关系负责,形成关系网。

你的意思是一个项目一旦用了hibernate就必须从一而终,不能同时用SQL了?
0 请登录后投票
   发表时间:2009-08-21  
大型应用的数据库生命周期远远大于应用的生命周期……
1 请登录后投票
   发表时间:2009-08-21  
ray_linn 写道
daquan198163 写道
ray_linn 写道
楼主去用hibernate去做个总分轧平吧,

横向按账户的借贷方,纵向按科目,科目有借方科目,贷方科目,借贷双方科目,某些科目的借方 要与另外一些科目的贷方相当。

这就好比说“楼主去用hibernate去做个BI吧、还有数据仓库、数据挖掘”
hibernate并不妨碍你对数据库做这些附加应用,也不妨碍你在同一个项目里用iBatis做OLAP型的功能。


你这不就是抬杠:说用hibernate和说对象数据库不就是一会事,进行复杂统计或者报表的时候,面向对象力不从心的地方就是,对象关系负责,形成关系网。

说到抬杠,就再抬一次吧,呵呵。其实你说的这个问题,和hibernate也没有什么关系。hibernate对数据库的操作,最终的,还是sql,而且,hibernate本身也提供了对native sql的支持(不考虑性能问题)。
这些,只能说明对象的表现力不够,面向对象不够好。形成关系网。那我只能猜测,你们有更加高级的方式吧?如果可以的话,是否可以也谈谈你们的解决方式,实际上,对于一些非常复杂的业务逻辑,相信很多人都比较头疼。
0 请登录后投票
   发表时间:2009-08-21  
TheMarine 写道
另外所有说数据库摆脱不掉的朋友,数据库已死,不是说不去使用数据库,而是说从数据库出发建模的时代过去了.


同意,也赞同LZ的观点,先从数据库建模出发,会导致使用面向对象语言Java去写出面向过程的代码,导致类的职责不明确或过于庞大...

无论是面向过程还是什么OOA、OOD、OOP的面向对象,在真正实施起来时觉得还是以场景为重点来抉择合适的方案

像前面有说做一些大数据统计,大数据的计算,涉及到数学概念较强的应用系统,面向过程的方式会比面向对象的思维适合吧?

面向对象建模的优点在于能自然的表现现实世界的概念,从而让你所设计的类和现实事物自然的联系起来...

无论如何,存在即是合理


0 请登录后投票
   发表时间:2009-08-21  
OO与关系数据库根本就没冲突
只是项目中实施方法不同而已
1、OO为中心,先建类,实现方法,实现方法中需要存储时,再去建表
2、数据库为中心,自以为知道哪些实体存在,预先给它建表,其实目的还是存储实体

如果用第2种,就导致,当业务复杂时,人的思维有限,代码信赖于表结构
大家都清楚,代码表达的业务逻辑复杂时,当表结构变动大时,改起来就痛苦了

因此,数据库应该只是支持(实现)OO业务逻辑一个工具而已,J道说的没错,只是那是终极理想而已,
在目前大环境下不现实
1 请登录后投票
   发表时间:2009-08-21   最后修改:2009-08-21
liujunsong 写道
楼主想的太简单了.
数据库系统发展这么多年了,已经形成了一套自己的完整的理论体系,你看书店里面有多少讲专门数据库理论的书?这是一门学问,有理论基础所以才能屹立不倒.
而orm,hibernate这些东西,最大的问题就是没有自己的理论体系,因此其发展受到很大的局限,基本上处在不可控的状态.
楼主对问题的分析和理解,实在是太缺乏专业精神了.


“一套自己的完整的理论体系”,跟你程序设计有毛关系啊?
麻烦你专业的讲一下,你做软件设计时(DBMS除外),数据库的那套理论体系给予你了什么帮助?是怎么帮助你的软件开发处于“可控状态”的?
你做系统分析、软件设计时,不会就是看谁的理论基础雄厚,而不管那理论是针对哪方面的?
0 请登录后投票
论坛首页 Java企业应用版

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