论坛首页 Java企业应用论坛

不选或许有千万种理由,但是选择hibernate只需要一个理由就足够了

浏览 39082 次
该帖已经被评为良好帖
作者 正文
   发表时间:2010-03-24  
xyz20003 写道
终于见到一个对sql调优有经验的人,请问,传统sql调优有哪些主要方法,这些方法的效果如何,ORM是如何将这些SQL调优方法都阻碍了呢?

我觉得,只有了解了SQL调优的传统方法,才能进行比较得出ORM之上的解决方案,之前所见的人都是空对空,只知道说ORM性能有问题,却没有给出SQL调优的解决之道。抓住一个点进行具体分析,才适合搞技术的。

个人感觉,没什么必要过于强调sql调优的问题吧。
正常讲,应该对会生成什么sql大概有数。
除非是很简单的用法,一般用了hql也应该关注生成的sql是什么,看有没有“超常”的sql出现。
复杂到想不出来的,个人感觉一般除了报表不多。
报表大家是不是也“特事特办”?
0 请登录后投票
   发表时间:2010-03-24  
xyz20003 写道
这时就要锻炼自己的平常心了。

如果能快速找到解决方案自然最好,如果找不到解决方案,也不应该埋怨什么,毕竟源代码都在那里了,只要有精力就可以通过代码挖出原因来。如果再有时间,也可以把发掘出的问题解决方案放在网上,帮助其他遇到同类问题的人快速解决那就更好了。环境是靠大家建立的。所有人都贡献一份力量,就会一起得到帮助,所有人都等着别人贡献,最后就什么也得不到。

没什么新意,老生长谈啦。

完全是在锻炼项目经理的神经。
没有大象一样的神精。
我可不想在源代码层找自己写出来的bug
0 请登录后投票
   发表时间:2010-03-24  
ORM的一个重大意义就在于——程序员可以用操作一个对象的感觉去操作数据库,这样更加接近人本身的思维模式。

某种程度上来说,这也算是降低了学习成本吧。

当然了,现在.NET在推动的LINQ又是另外一种思路了……
0 请登录后投票
   发表时间:2010-03-24  
很可惜,楼主说的优点几乎用不到

用hibernate主要是考虑数据库的封装
0 请登录后投票
   发表时间:2010-03-24  
Allen 写道
ORM的一个重大意义就在于——程序员可以用操作一个对象的感觉去操作数据库,这样更加接近人本身的思维模式。

某种程度上来说,这也算是降低了学习成本吧。

当然了,现在.NET在推动的LINQ又是另外一种思路了……

学习成本这个不认同。。。
实际来说,hibernate学习成本要高很多。

优势不在于此。
0 请登录后投票
   发表时间:2010-03-24  
额。。lz在拿hibernate抢分啊,比抢钱都容易

选不选hibernate ,不是一个群体的观点完全不一样,基本就不可能谁说服谁

0 请登录后投票
   发表时间:2010-03-25  
难道DBA就不会去学学Hibernate吗
0 请登录后投票
   发表时间:2010-03-25  
sealan 写道
难道DBA就不会去学学Hibernate吗


这个问题问的好?我见过某些单位的同事,会了SQL就保守的不行了,啥语言都不学了,何况是一个开源啊。

所以说,人的问题是很大的。
0 请登录后投票
   发表时间:2010-03-25  
DBA学点hibernate基础对交流协作有好处,但不能把架构师的任务推给DBA啊。
0 请登录后投票
   发表时间:2010-03-25  
miaow 写道
DBA学点hibernate基础对交流协作有好处,但不能把架构师的任务推给DBA啊。

办法是人想出来的,例如DBA不懂HQL,我知道有一家公司就是这样协调的,测试的时候有工具可以很方便的把所有测试时产生的sql打印出来,去重后,DBA一目了然,看起来也是很方便的。
0 请登录后投票
论坛首页 Java企业应用版

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