今天遇到一个很憋屈的问题那就是hibernate分页查询中出现重复数据,本来一直没有在意,以为是数据问题,但是一查程序和数据都没有问题,继续深入查看,找到问题了就是order By 时出的问题,唉.... oracle中的分页机制就是通过rownum函数来实现的,rownum顺序号的生成是排序后生成的,例如:select * from web_user where rownum > 0 and rownum <= 10 order by name 这个排序中使用了name字段作为排序,但是数…
在web项目中,显示数据一般采用分页显示的,在分页的同时,用户可能还有搜索的需求,也就是模糊查询,所以,我们要在dao写一个可以分页并且可以动态加条件查询的方法.分页比较简单,采用hibernate提供的分页,动态条件采用map("字段",模糊值)封装查询条件,map可以添加多个查询条件,是个不错的选择,从而达到实现分页并模糊查询. @Override public List<T> findPage(int page, int length, Map<String,…
//Dao类中实现了list集合和pagetotal方法 package zjf.strhib.Dao; import java.util.ArrayList; import java.util.List; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class PageDao { public List page…
在分页模糊查询中碰到setParameter 和setParameterList这两个方法 setParameter 以前就只会用setParameter(int arg,String str),我用到了from table A where 1=1 and ... like ? 还可以用另外一种方法: setParameter(String arg0, Object arg1) 但是这种方法在hql时注意要这样写如: from User u where u.name=:username and…
转自:http://loquat.iteye.com/blog/818547 报错:java.lang.Long cannot be cast to java.lang.Integer Long 无法转化成Integer类型. 这个异常 经常出现在hinbernate分页查询的时候. 原因: 这里在Hibernate2.0之前版本list.get(0)返回的是Integer类型. 但是在Hibernate3.0以后版本list.get(0)返回的是Long类型. …
1.创建分页实体类 public class PageBean { private int page; // 页码 private int rows; // 每页显示行数 private int start; // 某一页从第几条开始 public PageBean(int page, int rows) { super(); this.page = page; this.rows = rows; } public int getPage() { return page; } public vo…
1,First of all, we should have a wrapper class for page,this class can calculate the startRow by the number of result,pageSize,and currentPage. public class Pager extends BaseBO { private static final int DEFAULT_PAGE_SIZE = 10; private int totalRow…