public String getLimitString(String sql, boolean hasOffset) {
sql = sql.trim();
boolean isForUpdate = false;
if ( sql.toLowerCase().endsWith(" for update") ) {
sql = sql.substring( 0, sql.length()-11 );
isForUpdate = true;
}
StringBuffer pagingSelect = new StringBuffer( sql.length()+100 );
if (hasOffset) {
pagingSelect.append("select * from ( select row_.*, rownum rownum_ from ( ");
}
else {
pagingSelect.append("select * from ( ");
}
pagingSelect.append(sql);
if (hasOffset) {
pagingSelect.append(" ) row_ where rownum <= ?) where rownum_ > ?");
}
else {
pagingSelect.append(" ) where rownum <= ?");
}
if (isForUpdate) pagingSelect.append(" for update");
return pagingSelect.toString();
}
代码来自:org.hibernate.dialect.Oracle9Dialect
这里写两个if(hasOffset)是什么道理呢
是不是可以改成:
if (hasOffset) {
pagingSelect.append("select * from ( select row_.*, rownum rownum_ from ( ");
pagingSelect.append(sql);
pagingSelect.append(" ) row_ where rownum <= ?) where rownum_ > ?");
}
else {
pagingSelect.append("select * from ( ");
pagingSelect.append(sql);
pagingSelect.append(" ) where rownum <= ?");
}
分享到:
相关推荐
传统的网页设计只在一个JSP或者ASP页面中书写所有关于数据库操作的代码,那样做分页可能简单一点,但当把网站分层开发后,分页就比较困难了,下面是我做Spring+Hibernate+Struts2项目时设计的分页代码,与大家分享...
STRUTS2+HIBERNATE分页 实现代码详细的分页实现代码实现代码详细的分页实现代码实现代码详细的分页实现代码实现代码详细的分页实现代码
这个是我写的一个用到Hibernate+Servlet+Jsp来实现分页的代码,有助于大家学习分页功能的实现。
hibernate分页java代码,方法已经写好,但是在调用之前请先研究一下其中的参数。
本例子用Struts+Hibernate 开发,主要实现分页功能,运行环境Myeclipse+tomcate,附有数据库和jar包。下载后直接运行
绝对经典的hibernate分页源代码,还包括原有的jsp分页,即学即用
好久没写过什么东西了,最近自己在学习Java WEB方面的东西,自己想用JSP和 Struts2 HIBERNATE来写一个自己工作室的网站练练手,稍微有些收获今天写出来,与大家一起分享一下:STRUTS2+HIBERNATE实现分页是JAVA WEB最...
jsp hibernate的分页代码第1 3页.docx
struts hibernate 框架下的分页代码。很实用
J2EE系统中分页显示,修改dao层,service层,action层,两个分页类文件,代码如下
开发的 Hibernate+ JSP分页代码.rar
使用hibernate对list等进行分页查询的完整页面代码,希望能帮助大家,同时有什么疑问的话,希望大家多多指正和给出建议或意见。
通用的hibernate分页,不需修改直接使用的分页代码
Spring+Hibernate的完整分页代码,本例用的是Mysql数据库,可用于Sturts和Webwork,稍经改编,即可应用于各种Project.
struts2+spring+hibernate分页显示 分页显示一直是web开发中一大烦琐的难题,传统的网页设计只在一个JSP或者ASP页面中书写所有关于数据库操作的代码,那样做分页可能简单一点,但当把网站分层开发后,分页就比较困难...
Java代码 1. import org.hibernate.Query; 2. 3. query.setFirstResult(0),query.setMaxResults(4);相当于MySQL中的limit 0, 4; 4. public void testQuery() { 5. Session session = null; 6. try { 7. ...
实现简单的分页功能,用Struts 和hibernate实现
springMVC+spring+hibernate+jquery分页完整项目,完整代码