哪位大侠用过value object 与 page to page 设计模式,请教了...

bellfeel 2002-09-12 12:33:54
哪位大侠用过value object 与 page to page 设计模式,请教了...

给否讲讲这两种模式怎样使用嘛,请教啦,

最好就能给个例子,我看了petstore里的例子,不太懂,也不明白,讲讲吧,
...全文
63 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
t 2002-10-18
  • 打赏
  • 举报
回复
to bellfeel (风铃缘):

value object很普遍了。根据它还有n种变形——几乎都被人讨论烂了。我说的也没他们说得好。你可以去TSS(http://www.theserverside.com)下一本"EJB Design Patterns"看看,上面有对VOH(一般俺们都称value object为value objet handler pattern)的总结。当然你要做的话,相关的DAO,也都需要了解。说一下大概,这方面的东西主要就是VO,VOH和DAO。VO保存数据(根据需要,也可以理解为一个cache啦,或者dataset这类的),VOH保持引用(reference),根据需要也可(大多数情况)维护VO的生命周期,DAO就象FireWall,访问数据库就是了。

其实pattern就是给你一个启发(这是我的理解),就象我们有些设计原则(看看objectmetor的design priciples),例如,我们都知道要分层,要cache,那么怎么做?pattern就给你一个方法,你一看,哦不错。但还是得根据系统的需求改不是?多数情况下是一个思想。扯远了。

说一下page to page。不知道你只不知道什么是page to page?(这个问题问的有些托大了,不过要是你真的不知道,我百和一顿,你不是也不知道,是不?)象csdn下面哪些1 2 3 ...这样就是page to page,problem是这些数据你不能一下都取出来——我想你是碰到这个问题了——也不好一次一次的取,那么怎么办? solution说白了就是cache,取一些,cache them。需要注意的是什么时候再取?什么时候从cache中拿?这个不要在action中做,要delegate给service(或component,看你怎么做了)。action只是getNext(),getPrev(),判断cache是否空了,让container(就是维持cache的什么什么的)去做,然后container可以把取数据交给VOH,也可以是VOH本身,即交给DAO取做,container就是VOH也可以。总之,设计是灵活的。

说了这么多,主要是因为page to page的资料不好找。其实思想也很简单。TSS上有一个Request for alternative pattern,差不多。
chrischen79 2002-10-17
  • 打赏
  • 举报
回复
value object(值对象)
在j2ee中,通过remote方式调用entity bean获得数据是一件代价不小的操作,其间涉及到对request/respond数据的封装、rmi传递等等。而从某个entity bean中获得数据通常不止一个field,例如一个customer实体bean,client端通常要获得customer的id、name、address、email、account等等数据项,如果每次都是调用customer bean的getId、getName、getAddress等等remote方法,代价太高。
使用value object模式,封装一个value calss——customerInfo类,这个类由customer的主要数据项组成并实现java.io.Serializable接口,在customer实体bean的remote接口中暴露一个getInfo方法,返回customerInfo实例(这就是一个value object)。这样就大大降低了rmi调用次数,从而提供系统的performace。

你在上面提到的好像不是value object模式的运用。

page to page我也不知道,望高手指点。
bellfeel 2002-09-13
  • 打赏
  • 举报
回复
本人这两天还没弄清楚这value object应怎样使用?

我看在petstore里大概是这样调用的:定议一个bean,在bean里有相应的set,get方法,然而在local ejb(petstore 都是用local ejb)的create()里把数据bean.setXXX(),在EjbPostCreate()里bean.getXXX(),
这就是value object方式吗?

请教了。
我是用struts1.1+ejb+weblogic7+jbuilder7开发,框架正建中,头痛中呀,请教了
bellfeel 2002-09-12
  • 打赏
  • 举报
回复
up.....

51,397

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧