- 浏览: 164272 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (116)
- 随笔 (2)
- spring (24)
- struts (1)
- hibernate (6)
- log4j (0)
- mysql (14)
- oracle (0)
- ext (0)
- jQuery (0)
- HTML+CSS (2)
- Javascript (1)
- 其它杂碎 (0)
- IT (3)
- J2EE综合 (15)
- SQLServer (1)
- 好文章URL 待阅读 (3)
- 编辑器 (2)
- 版本控制 (5)
- Tomcat (4)
- DoJo (0)
- Ubuntu (11)
- Hadoop (3)
- cxf (3)
- maven (6)
- CI (5)
- H2 (1)
- JVM (1)
- FirefoxOS (1)
- Jboss (1)
- 操作系统 (1)
- C3P0 (2)
- Quartz (1)
- maps (10)
- 设计模式 (5)
最新评论
-
yogurt2012:
请问··我如果要调试H2数据库来分析其JOIN算法应该怎么做呢 ...
H2笔记 -
carlosfu:
很好很全,很有收获
Spring3笔记之 JDBC -
ponlya:
coldrush 写道看了你的配置 ,刚绝 file:后加绝对 ...
添加使用dtd文件 -
ponlya:
byp19980911 写道这不是很好的解决办法,最好是使用连 ...
java.net.SocketException:Software caused connection abort: socket write error -
ponlya:
ayanami001 写道为什么spring没有封装分页吗,那 ...
Spring3笔记之 JDBC(分页)
接上篇的实体,DAO接口,实现,测试及XML http://ponlya.iteye.com/blog/1017538,这里只把上篇中的分页对象贴出来,其中参考了:参考: http://www.codefutures.com/tutorials/spring-pagination/文章
com.spring305.jdbc.page.CurrentPage.java
public class CurrentPage<E> { private int pageNumber; private int pagesAvailable; private List<E> pageItems = new ArrayList<E>(); public void setPageNumber(int pageNumber) { this.pageNumber = pageNumber; } public void setPagesAvailable(int pagesAvailable) { this.pagesAvailable = pagesAvailable; } public void setPageItems(List<E> pageItems) { this.pageItems = pageItems; } public int getPageNumber() { return pageNumber; } public int getPagesAvailable() { return pagesAvailable; } public List<E> getPageItems() { return pageItems; } }
分页辅助类com.spring305.jdbc.page.PagingHelper.java
import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; import org.springframework.dao.DataAccessException; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.ResultSetExtractor; import org.springframework.jdbc.core.simple.ParameterizedRowMapper; /** * 分页辅助类 * * @author ZhengChao * */ public class PagingHelper<E> { @SuppressWarnings("unchecked") public CurrentPage<E> fetchPage( final JdbcTemplate jt, final String sqlCountRows, final String sqlFetchRows, final Object args[], final int pageNo, final int pageSize, final ParameterizedRowMapper<E> rowMapper) { // determine how many rows are available int rowCount = jt.queryForInt("select count(*) from T_people where id >= ?",new Object[]{1}); rowCount = jt.queryForInt(sqlCountRows, args); // calculate the number of pages int pageCount = rowCount / pageSize; if (rowCount > pageSize * pageCount) { pageCount++; } // create the page object final CurrentPage<E> page = new CurrentPage<E>(); page.setPageNumber(pageNo); page.setPagesAvailable(pageCount); // fetch a single page of results final int startRow = (pageNo - 1) * pageSize; jt.query(sqlFetchRows, args, new ResultSetExtractor() { public Object extractData(ResultSet rs) throws SQLException, DataAccessException { final List pageItems = page.getPageItems(); int currentRow = 0; while (rs.next() && currentRow < startRow + pageSize) { if (currentRow >= startRow) { pageItems.add(rowMapper.mapRow(rs, currentRow)); } currentRow++; } return page; } }); return page; } }
测试:
@Test//分页测试 public void testPage() throws SQLException{ CurrentPage<People> currentPagePeople = peopleDao.getPeoplePage(1, 2, 0); List<People> pList = currentPagePeople.getPageItems(); for (int i = 0; i <pList.size(); i++) { System.out.println(pList.get(i)); } }
评论
2 楼
ponlya
2013-05-03
ayanami001 写道
为什么spring没有封装分页吗,那么常用的方法。。。
去问下作者吧?
各个数据库厂商的分页写法有异,除了Hibernate这样的ORM做了,其它的都仅是对JDBC的简单的封装而已.
1 楼
ayanami001
2012-04-01
为什么spring没有封装分页吗,那么常用的方法。。。
发表评论
-
Spring整合Hibernate(摘录)
2011-05-07 09:48 741简要步骤From:http://blog.csdn.net/s ... -
Spring3笔记之 JDBC
2011-04-25 22:02 7809使用Spring 的JDBC 先创建表: DROP TAB ... -
Spring3笔记之 事务传播
2011-04-24 15:51 1207摘自:http://zhxing.iteye.com/blog ... -
Spring3笔记之 AOP
2011-04-24 14:24 1897Spring AOP部分使用JDK动态代理或者CGLIB来为目 ... -
Spring3笔记之 AOP Cglib 代理
2011-04-24 14:13 1353JDK的Proxy实现代理要求 ... -
Spring3笔记之 AOP JDK 代理
2011-04-24 14:09 1047使用JDK代理,代理对象必须实现一接口 com.spring ... -
Spring3之 Resource
2011-04-21 22:49 3972主要是org.springframework.core.io. ... -
Spring3之 bean 注解
2011-04-20 22:18 1499小记下,spring注解相关: com.spring305. ... -
Spring3之 bean 定制bean特性
2011-04-19 21:10 1290Customizing the nature of a bea ... -
Spring3之 bean 作用域scope
2011-04-18 22:21 1455Bean scopes 作用域 5个:singleton,p ... -
Spring3之 bean Method injection
2011-04-17 20:04 1455Method injection(方法注入) bean都是s ... -
Spring3之 bean AutoWire
2011-04-17 12:01 5935Autowiring collaborators 自动装配 ... -
Spring3之 bean depends-on
2011-04-17 08:56 3262depends-on depend-on用来表 ... -
Spring3之 bean Lazy-initialized beans
2011-04-17 08:48 1969Lazy-initialized beans延迟 ... -
Spring3之 集合对象属性注入
2011-04-16 23:17 1208com.spring305.test.beanInit.cpo ... -
Spring3之 bean idref?
2011-04-16 18:39 963很是奇怪idref是干什么 ... -
Spring3之 bean简单属性注入
2011-04-16 17:40 1361DI (依赖注入)有二种: Constructor-based ... -
Spring3之 实例化bean2
2011-04-16 14:30 1014Spring3之 bean命名(http://ponlya.i ... -
Spring3之 bean命名
2011-04-16 11:36 2006一、bean的命名采用标准Java命名约定:小写字母开头,首字 ... -
Spring3之 IoC容器的实例化
2011-04-16 08:39 1515Bean:在Spring中,那些组成你应用程序的主体(ba ...
相关推荐
Spring笔记可能涵盖了以下内容: 1. **IoC(Inversion of Control)容器**:Spring的核心特性之一,通过反转控制权,让框架负责管理对象的生命周期和装配,开发者只需定义配置,无需手动创建对象。 2. **依赖注入...
在更复杂的系统中,可能需要结合后端框架如Spring MVC、Struts等,以及前端库如Bootstrap、jQuery等来实现更强大和灵活的分页功能。 总之,JSP+JDBC的真分页技术在处理大量数据时能显著提升性能,但可能会牺牲一...
1-JSP+JDBC_假分页笔记 9-Struts高级部分(1)(解决重复提交、上传组件)笔记 11-留言管理程序_使用Struts + DAO完成笔记 54留言管理程序_Struts + Spring + Hibernate笔记 ......
3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记 4-Struts入门笔记 005_Struts+DAO登陆 6-Struts标签-BEAN标签笔记 7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、...
3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记 4-Struts入门笔记 005_Struts+DAO登陆 6-Struts标签-BEAN标签笔记 7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、...
3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记 4-Struts入门笔记 005_Struts+DAO登陆 6-Struts标签-BEAN标签笔记 7-Struts标签 -LOGIC标签笔记 8-Struts标签- HTML标签笔记 9-Struts高级部分(1)(解决重复提交、...
"51-52使用Struts + Spring + Hibernate完成用户登陆笔记.pdf"和"53使用Struts + Spring + Hibernate完成分页笔记.pdf"提供了实际的项目示例,演示了这三个框架如何协同工作,完成用户登录和分页功能。"54留言管理...
同时,可能会讲解如何使用 Spring Data JPA 的 CRUD 操作,以及分页和排序功能。 Spring Boot 对于微服务架构的支持也很全面,例如集成 Zuul 或 Netflix Eureka 进行服务发现和路由,或者使用 Ribbon 进行客户端...
3. **分页**:在处理大量数据时,分页技术是非常必要的,它可以提高用户体验,避免一次性加载过多数据导致的性能问题。在Java Web开发中,分页通常通过查询数据库时指定页码和每页条目数量实现。可以使用SQL的LIMIT...
3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记.pdf 33-37Hibernate1对N案例笔记.pdf 38-43Hibernate多对多案例笔记.pdf 4-Struts入门笔记.pdf 44登陆案例(Struts+DAO+Hibernate)笔记.pdf 45-Struts+Hibernate...
在“2-JSP+JDBC_真分页(基于Oracle数据库分页)笔记.pdf”和“3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记.pdf”中,你可以了解到Hibernate如何替代传统的JDBC进行数据查询,并实现分页功能。同时,Hibernate的...
本笔记将详细介绍如何在Struts框架中结合DAO实现分页功能。 首先,我们需要了解MVC模式。Model代表业务逻辑,View负责数据显示,Controller处理用户请求并协调Model和View。DAO则是Model层的一部分,它封装了对...
3. **创建Spring核心配置文件**:通常情况下,Spring Boot会自动配置大部分的设置,但如果需要手动配置,可以在`application.properties`或`application.yml`文件中添加配置。 4. **引入数据库连接配置**:通过配置...
3-JSP+DAO和MVC+DAO(基于MySQL数据库分页)-v笔记.pdf 4-Struts入门笔记.pdf 005_Struts+DAO登陆.pdf 9-Struts高级部分(1)(解决重复提交、上传组件)笔记.pdf 54留言管理程序_Struts + Spring + Hibernate笔记.pdf
### Spring-data-jpa 学习笔记 #### 一、spring-data-jpa的简单介绍 Spring Data JPA 是 Spring Data 的一部分,它简化了基于 Java Persistence API (JPA) 的数据访问层开发工作。Spring Data 旨在减少数据访问层...
SSM整合步骤笔记主要涉及Java EE开发中常用的Spring、SpringMVC和MyBatis三大框架的整合过程。SSM框架是当前Web开发中非常流行的一种后端技术栈,其目的在于构建高效、解耦的项目结构。在本知识点中,我们将详细介绍...
mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring MVC 的集成 mybatis实战教程mybatis in action之七实现mybatis分页源码下载 mybatis实战教程mybatis in ...
(魔乐)J2EE三大框架_笔记 1-JSP_JDBC_假分页 2-JSP_JDBC_真分页(基于MySQL数据库分页) 3-JSP_DAO和MVC_DAO(基于MySQL数据库分页) ............... 54-留言管理程序 _Struts _ Spring _ Hibernate完成
5. **第七季MyBatis笔记与代码.zip**:MyBatis是一个优秀的持久层框架,它简化了JDBC的繁琐工作,这部分内容可能包括MyBatis的配置,映射文件,动态SQL,以及与Spring的集成。 6. **ssm框架集成笔记与代码文档.zip*...
MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解进行配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 在这些...