yangstarfly
2003-09-12 16:26
谢谢bruce

neuhawk
2003-09-12 16:38
不知道为什么,我用jcs跟没有用没有什么区别。

chinahero
2003-09-17 10:51
是啊,我发现我在hbm.xml中写不写上[jcs-cache usage="read-only"/]查询时间都一样

第一次查询

Begin time is 0

Hibernate: select post0_.id as x0_0_ from post post0_

Hibernate: select post0_.id as id, post0_.userid as userid from post post0_ where post0_.id=?

End time is 2281

第二次查询

Begin time is 0

Hibernate: select post0_.id as x0_0_ from post post0_

End time is 2625

第三次查询

Begin time is 0

Hibernate: select post0_.id as x0_0_ from post post0_

End time is 1766

时间差不多吧,不过第二次第三次没出现sql语句,是不是jcs起作用了?但是我明明在post.hbm.xml中没有使用[jcs-cache usage="read-only"/]这个tag

附读函数

public void readDB(Session session){

String sql = "select post from com.test.my.Post as post";

long begintime = System.currentTimeMillis();

System.out.println("Begin time is 0 ");

try{

Query query = session.createQuery(sql);

//List myList=query.list(); //据说用List Jcs无效

Iterator myIter=query.iterate();

}catch (HibernateException ee){

ee.printStackTrace();

}

long endtime=System.currentTimeMillis();

System.out.println("End time is "+(endtime-begintime));

}

robbin
2003-09-17 12:31
找一个字段非常多,数据量比较大的表测试。

你的JCS已经开始工作了。

robbin
2003-09-17 12:34
只有Iterator能读JCS,List不会去读JCS,你可以到Hibernate中文论坛精华区看我的Hibernate Iterator JCS分析贴。

猜你喜欢