锁定老帖子 主题:Hibernate Iterator的问题
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2003-10-21
如果结果集很大,影响倒内存怎么办啊
|
|
返回顶楼 | |
发表时间:2003-10-21
我用proxy裹住PO,像JIVE那样,PO被传入Proxy并作为成员驻守在里面,
可是按java的引用传递,还是在对PO直接读写,难道一定要重建一个 VO及其一整套成员变量?? |
|
返回顶楼 | |
发表时间:2004-01-30
引用 首先假设我们都是在Action中数据转化VO与FormBean的: 我赞成yehs220说的方法,简单明了. 何况用filter也不是用在所用的servlet, 我们可以做一些map设定。有选择的filter servlet. 取数据的时候用list, 这样数据可以cache到JCS中,以后直接使用iterator,利用JCS。 至于, 数据集打包的方式,由于涉及到打包数据集而后又解包,即麻烦又影响速度,为什么不直接用list? 我不太明白,filter不是用在所有的servlet,我们可以做一些map设定,有选择的filter servlet 具体怎么做, 不太明白你的意思 对于后面关于数据打包的方式,如果你直接用list的话,那么如果要用到jcs,必须在web层literator,我想你是这个意思吧 |
|
返回顶楼 | |
发表时间:2004-09-07
shmin的方法?能讲讲吗?想知道答案,别删贴
|
|
返回顶楼 | |
发表时间:2006-11-14
macula 写道 VO <--> PO 完全分开的话,会导致每次访问都有大规模的VO <--> PO的赋值行为的。
因为hibernate如此强大,虽然VO跟PO不可能一一对应,但是可以根据使用情况把一些大PO拆成几个小PO的,比如User可以包括 Auth (username,password) Name (first,last...) 等等,这样可以一次取出部分数据而不是全部,试想如果User 如果包含一个个人生平的大字段的话,是否有必要每次读出? 而通一张表,也可以根据使用情况不同同时存在多个PO。 FormBean 就可以包括一个或者多个 PO(VO),即便有的时候不需要全部使用,空着几个属性也没关系吧 public class UserForm extends ActionForm { private Auth auth; private Name name; ...... } 我觉得FormBean也应该是基本固定的,只要涵盖了要要传递的内容就行了,没必要也不可能那么严丝合缝儿吧 每次都转换一下,表,页面多的话,工作量一下大的没边儿了 用spring 的mvc会有这个问题吗? |
|
返回顶楼 | |
发表时间:2006-11-17
建议robbin把关于VOPO的帖子置顶,设为精华。
我是看了robbin的帖子才把这一块理解清楚。 |
|
返回顶楼 | |
发表时间:2007-04-19
DTO,VO最初是解决EJB中的数据传递负荷。。。
现在,一切已经得到了简化,根本没有要是区分PO,VO,在Struts中,如果使用strecks.sf.net,FormBean同样是POJO,不需要继承ActionFrom。。。 当然为了方便,我会增加一些简单Bean来封装数据,仅仅是根据它的用途,如果页面登录LoginBean来包装username,password,使用数据显得更加轻巧,。。当然在所谓的PO也会有同样的处理,如果一个简单的BasicUserInfo封装username ,screen name, role等最常用的信息,而完整用户信息可能只会在修改用户资料时用到。 |
|
返回顶楼 | |
发表时间:2007-04-28
如果数据比较多,本来就要占内存的.这是个本质问题是没为法解决的.
要不你就不要读出那么多数据. |
|
返回顶楼 | |
发表时间:2007-04-28
macula 写道 VO <--> PO 完全分开的话,会导致每次访问都有大规模的VO <--> PO的赋值行为的。
因为hibernate如此强大,虽然VO跟PO不可能一一对应,但是可以根据使用情况把一些大PO拆成几个小PO的,比如User可以包括 Auth (username,password) Name (first,last...) 等等,这样可以一次取出部分数据而不是全部,试想如果User 如果包含一个个人生平的大字段的话,是否有必要每次读出? 而通一张表,也可以根据使用情况不同同时存在多个PO。 FormBean 就可以包括一个或者多个 PO(VO),即便有的时候不需要全部使用,空着几个属性也没关系吧 public class UserForm extends ActionForm { private Auth auth; private Name name; ...... } 我觉得FormBean也应该是基本固定的,只要涵盖了要要传递的内容就行了,没必要也不可能那么严丝合缝儿吧 每次都转换一下,表,页面多的话,工作量一下大的没边儿了 如果大字段影响到了效率(Oracle中:行迁移-),可以考虑把大字段单独建表 |
|
返回顶楼 | |