public class FinancialLoanInfo implements java.io.Serializable { // Fields /**
 * 
 */
private static final long serialVersionUID = -5163416181325490447L;
private BigDecimal loanId;
private FinancialUsers userId;
        //.....}在根据日期,状态查询FinancialLoanInfo 对象的时候,程序会自动查出关联的FinancialUsers这个对象的所有记录。现在问题是
1.带参数,查询分页的方法能不能用JPA写,现在是查询所有的记录,在内存里处理的
2.如果是用JPA写,怎么关闭延迟加载。FinancialUsers

解决方案 »

  1.   

    jpa中OneToOne和ManyToOne的映射关系默认是不延迟加载的只有OneToMany和ManyToMany默认才是延迟加载
      

  2.   

    延迟加载@OneToOne(fetch = FetchType.LAZY)
    分页查询            String jpql = "select * from XXX where name like :name"
                Query query = em.createQuery(jpql);
               query.setParameter("name", name+"%");            // 设置查询结果的结束记录数
                int maxResults = pageSize;
                query.setMaxResults(maxResults);            // 设置查询结果的开始记录数(从0开始计数)
                int firstResult = (pageNo - 1) * pageSize;
                query.setFirstResult(firstResult);           return query.getResultList();