| 发表于:2007-04-05 09:50:46 楼主 |
在session bean中调用entity bean的find方法取得object,然后组成dto 为什么才150条数据(30个字段)(从10万条数据中取)需要20多秒呢? 我测试了一下,find方法执行花费120毫秒左右,然后循环执行,在第一次取object的某一个字段的时候花费大约8秒的时间,怎么优化呀? 代码片断: try { ...... ammetercollect = ammeterhome.findbybooknumforinputdata(charcomid, booknum,indate1); //120毫秒左右 iterator iter = ammetercollect.iterator(); while (iter.hasnext()) { ammeterinforemote item = (ammeterinforemote) iter.next(); userid = item.getuserid(); //第一次执行的时候,大约8秒左右,以后都是几十毫秒 username = userhome.getusernamebyuserid(userid); //40毫秒左右 ammetername = lxxxremote.getammetername(item.getammenameid().intvalue()); ammeterid = item.getammeterid(); timerflag = item.gettimerflag().intvalue(); ammeterdto = new ammeterdto(...); } } |
|
|
|
|