摘要:
实体对象查询(重要) * N+1问题,在默认情况下使用query.iterate查询,有可能出现N+1问题,所谓的N+1 是查询对象的时候发出了N+1条sql语句 1:首先发出一条查询id列表的sql N:根据id列表发出n条查询语句 * list和iterate的区别? * list在默认情况下,只向缓存中放入数据,而不利用缓存中的数据 * iterate在默认情况下有N+1问题,如果缓存中存在数据那么会根据id到缓存获取数据 也就说iterate是利用缓存的 参见:SimpleObjectQueryTest1.java,SimpleObjectQueryTest2.java... 阅读全文
摘要:
条件查询(重要) * 可以采用拼字符串的方式传递参数 * 可以采用 ?号的方式传递参数 * 可以采用 :参数名的方式传递参数 * 如果传递多个参数,使用setParameterList来传递 * 在hql中可以使用数据库的函数,如:date_format * 参见:SimpleConditionQueryTest.java "like" 和 "=" 都可以通过 ": 参数名" 或者 "?" 接参数 如下: like :参数名 ,like ? , =:参数名 , =? Java代码 packagecom.wlh.hi 阅读全文
摘要:
package com.bjsxt.hibernate;import java.util.Iterator;import java.util.List;import org.hibernate.Session;import junit.framework.TestCase;/*** 原生sql查询* @author Administrator**/public class SqlQueryTest extends TestCase {public void testQuery1() {Session session = null;try {session = HibernateUtils.ge 阅读全文