锁定老帖子 主题:一次小项目的思考
该帖已经被评为良好帖
|
|
---|---|
作者 | 正文 |
发表时间:2009-08-24
最后修改:2009-08-24
argan 写道 这差的远了,有一天,你在处理订单的业务的时候,想加上打折的功能,买10000,打个8折,整了半天,发现这个总金额是在存储过程里写的,还得去找DBA来修改,过了两天,老板说,我们要搞个金秋大推广....DBA大哥还维护数据库干吗呢,直接去写业务规则得了 说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑 这种就接近扯淡了。 一个搓人把8折hard code到SP里,你能保证他不hard code到java里? 真的关于了规则的东西,也不是ORM能解决的。 |
|
返回顶楼 | |
发表时间:2009-08-24
最后修改:2009-08-24
ray_linn 写道 argan 写道 这差的远了,有一天,你在处理订单的业务的时候,想加上打折的功能,买10000,打个8折,整了半天,发现这个总金额是在存储过程里写的,还得去找DBA来修改,过了两天,老板说,我们要搞个金秋大推广....DBA大哥还维护数据库干吗呢,直接去写业务规则得了 说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑 这种就接近扯淡了。 一个搓人把8折hard code到SP里,你能保证他不hard code到java里? 真的关于了规则的东西,也不是ORM能解决的。 这是另外一个问题,和ORM无关,你看我哪里暗示了“个搓人把8折hard code到SP里,你能保证他不hard code到java里”了? 我要说的只是:要在合适的地方去做合适的事情 再说,就算hard code,我也要把他hard code到java里,复杂的逻辑就算硬写也比SP好些 |
|
返回顶楼 | |
发表时间:2009-08-24
最后修改:2009-08-24
ray_linn 写道 argan 写道 这差的远了,有一天,你在处理订单的业务的时候,想加上打折的功能,买10000,打个8折,整了半天,发现这个总金额是在存储过程里写的,还得去找DBA来修改,过了两天,老板说,我们要搞个金秋大推广....DBA大哥还维护数据库干吗呢,直接去写业务规则得了 说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑 这种就接近扯淡了。 一个搓人把8折hard code到SP里,你能保证他不hard code到java里? 真的关于了规则的东西,也不是ORM能解决的。 拿刀切菜,结果砍人去了,不是脑子进水了,就是待教育,不能埋汰刀。 总金额是在存储过程里写的,还得去找DBA来修改,这个不是硬编码 |
|
返回顶楼 | |
发表时间:2009-08-24
argan 写道 ray_linn 写道 argan 写道 这差的远了,有一天,你在处理订单的业务的时候,想加上打折的功能,买10000,打个8折,整了半天,发现这个总金额是在存储过程里写的,还得去找DBA来修改,过了两天,老板说,我们要搞个金秋大推广....DBA大哥还维护数据库干吗呢,直接去写业务规则得了 说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑 这种就接近扯淡了。 一个搓人把8折hard code到SP里,你能保证他不hard code到java里? 真的关于了规则的东西,也不是ORM能解决的。 这是另外一个问题,和ORM无关,你看我哪里暗示了“个搓人把8折hard code到SP里,你能保证他不hard code到java里”了? 我要说的只是:要在合适的地方去做合适的事情 "发现这个总金额是在存储过程里写的".....这不是hard code是嘛? |
|
返回顶楼 | |
发表时间:2009-08-24
ray_linn 写道 恩 oracle真该羞死啊...
不知道LZ用hibernate去实现过复杂统计,复杂报表么?这时候你会发现hibernate多么力不从心。 仅仅拿个hibernate,就去鄙薄ERwin之类的建模工具,未免浅薄。关系建模有自己的应用场景,存储过程仍然是坚如磐石的东西,牢牢占据了电信、银行、保险等等企业应用的顶峰。 我也感觉在大型,复杂的系统面前,hibernate力不从心 |
|
返回顶楼 | |
发表时间:2009-08-24
ray_linn 写道 argan 写道 ray_linn 写道 argan 写道 这差的远了,有一天,你在处理订单的业务的时候,想加上打折的功能,买10000,打个8折,整了半天,发现这个总金额是在存储过程里写的,还得去找DBA来修改,过了两天,老板说,我们要搞个金秋大推广....DBA大哥还维护数据库干吗呢,直接去写业务规则得了 说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑 这种就接近扯淡了。 一个搓人把8折hard code到SP里,你能保证他不hard code到java里? 真的关于了规则的东西,也不是ORM能解决的。 这是另外一个问题,和ORM无关,你看我哪里暗示了“个搓人把8折hard code到SP里,你能保证他不hard code到java里”了? 我要说的只是:要在合适的地方去做合适的事情 "发现这个总金额是在存储过程里写的".....这不是hard code是嘛? 在存储过程里面把总金额算出来,写进去,这叫hardcode啊?难道你们的订单总金额都一样的啊? 其实说这个又偏了,我要说的还是“说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑” |
|
返回顶楼 | |
发表时间:2009-08-24
在存储过程里面把总金额算出来,写进去,这叫hardcode啊?难道你们的订单总金额都一样的啊? 其实说这个又偏了,我要说的还是“说到底,还是要把事情放在最合适的地方去做,同样DBA也不应该去关心具体的业务逻辑”[/quote】 1. 这是你自己表述的问题。 2. 看不出存储过程算出来,写到DB里,要DBA改SP做什么,除非你说SP没考虑到打折情况,这种编程逻辑错误同样也会发生在任何一种提供Server的middle ware里。 |
|
返回顶楼 | |
发表时间:2009-08-24
一直有个疑问,是用hibernate自动创建表还是用powerdesign等建模工具建表?
|
|
返回顶楼 | |
发表时间:2009-08-24
conrol 写道 一直有个疑问,是用hibernate自动创建表还是用powerdesign等建模工具建表?
虽然我很少使用Hibernate,不过,如果我用Hibernate的话,我会用Hibernate自己创建。 |
|
返回顶楼 | |
发表时间:2009-08-24
我也比较赞同楼主的观点。
|
|
返回顶楼 | |