Topic: 困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?)

  Print this page

1.困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) Copy to clipboard
Posted by: yuan
Posted on: 2003-07-12 20:13


表A:A1,A2,A3...
表B:A1(表示和表A中A1字段关联,下同),B1,B2...
表C:B2,C1,C2...
表D:D1,D2,C1...

先用A2查询到A1,然后再用A1到表B中查询到B2,再用B2到表C中查询到C1,再用C1到表D中查询到D1,最后返回D1的值。

我原来用的CMP,那么就会出现循环套循环的getHome和finder方法,这样的效率我想应该不是很好,而且还要面对很多的异常处理;后来用一条SQL语句,Select套Select的办法,很简单也很快速就搞定了。

我现在就困惑了,CMP的优势又是什么了?或者说,我想请教各位大侠,CMP到底该怎么用?什么时候,什么情况下用?如果是刚才的那种情况,我用一个Session Bean + JDBC就搞定了,而且速度很快,也没有很多的异常处理。

谢谢大家!

2.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: supermy
Posted on: 2003-07-12 21:14

很多问题应该从设计上解决,摆脱原有的惯性思维。

3.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: yuan
Posted on: 2003-07-13 19:01

那么像这种情况,应该怎么去设计了?如果大家遇见这种类似的问题会怎么处理了?

CMP的优势是什么了?CMP到底该怎么用?

好象讨论的气氛不好啊:(

4.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: bruce
Posted on: 2003-07-14 05:18

我也说几句吧。

CMP是一种O/R Mapping,这种方式decouple SQL与业务逻辑之间紧密的联系。其扩展能力与灵活性大大提高。当然,现在也有很多好的O/R Mapping 工具, 但CMP与自身的EJB容器结合,有CMT和BMT。应该说其事务处理能力较强于其它产品。

对了,yuan, 能不能把你的那个子查询在CMP中实现的例子与你的SQL语句一起贴出来,大家也好讨论一下,在CMP这边有没有可以简化的地方。不管怎样,EJB还是J2EE的关键部分,相信它在以后的版本中会有改进的。

最后想说的就是:这里的讨论的气氛需要我们大家一起去营造呀。

5.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: supermy
Posted on: 2003-07-14 22:25

hh,cmp也能一个ejbql搞定。IBM上有一篇cmp-cmr的中文教程,搜索一下,看看就明白了。

6.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: bruce
Posted on: 2003-07-15 12:06

找了,不过没有找到, 还望指明。
是不是用ejbselect方法实现呢?

7.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: bruce] Copy to clipboard
Posted by: why
Posted on: 2003-07-15 17:23

bruce wrote:
找了,不过没有找到, 还望指明。
是不是用ejbselect方法实现呢?

I don't know whether there's a Chinese version, here's the English version:
Introduction to container-managed persistence and relationships
Part 1: http://www-106.ibm.com/developerworks/webservices/edu/ws-dw-wscomp-i.html
Part 2: http://www-106.ibm.com/developerworks/webservices/edu/ws-dw-wscomp2-i.html

8.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: bruce
Posted on: 2003-07-16 11:29

多谢,中文版的我已经看过了。是以下联接
http://www-900.ibm.com/developerWorks/cn/education/webservices/ws-wscomp/tutorial/index.html

<<hh,cmp也能一个ejbql搞定。IBM上有一篇cmp-cmr的中文教程,搜索一下,看看就明白了。

ejbql 能搞定复杂的查询吗? 例如 左联合,右联合等。反正我还没听说,不过现在还在看EJBQL.多多交流。

9.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: qilong2000
Posted on: 2003-07-23 10:16

我觉得你这种情况还是用session bean+jdbc快,而且性能也好

10.Re:困惑:(希望大家来解惑) (CMP的优势是什么了?CMP到底该怎么用?) [Re: yuan] Copy to clipboard
Posted by: zwzapple
Posted on: 2003-08-11 18:22

cmp的思想是自动产生sql来执行,减少开发量。以及实现数据库独立。

但是cmp目前的实现虽然可以完成这些任务,但是完成得不构好。
例如性能。
对于你的那种情况,当然要jdbc拉。

假如我希望entity_ejb1和entity_ejb2之间建立一个关联。
实现如下 entity_ejb1_remote_interface.setEntity_ejb2(entity_ejb2);
如果用jdbc,会更加容易吗?


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923