- 浏览: 624571 次
- 来自: 信阳
文章分类
最新评论
-
贝塔ZQ:
导出数据到excel文档中,可以使用pageoffice插件实 ...
Java POI 数据导出到Excel 2010 -
熊佳佳:
key是需要向支付宝购买额度的
支付宝即时到帐接口调试入口页面 -
zhuzuofei:
你好,你代码中提供的pid,key好像是无效的...
支付宝即时到帐接口调试入口页面 -
xingxing:
光有图没有解决方案......
centOS setup 命令 设置网络参数 -
atgoingguoat:
...
Android:简单的图片浏览器
实体bean---------> PageBean.java
JSP页面
PageServiceImplForUser.java
UserDaoImpl.java
ACTION---------> ShowUser.java
spring中的配置
package com.demo.page; import java.util.List; public class PageBean { /*==============================================================*/ private List resultList;//结果集 private int recordSUM;//总记录数 private int pageSUM;//总页数 private int currentPage;//当前页 private int pageSize;//页记录数 private boolean isFirstPage;//是否是第一页 private boolean isLastPage;//是否是最后一页 private boolean hasPreviousPage;//是否有上一页 private boolean hasNextPage;//是否有下一页 /*===========================初始化===================================*/ public void init(){ this.isFirstPage = isFirstPage(); this.isLastPage = isLastPage(); this.hasPreviousPage = isHasPreviousPage(); this.hasNextPage = isHasNextPage(); } /*=============================总页数=================================*/ public static int countTotalPage(int pageSize,int recordSUM){ int totalPage = recordSUM % pageSize == 0 ? recordSUM/pageSize : recordSUM/pageSize+1; return totalPage; } /*============================当前页开始记录号 ==================================*/ public static int countOffset(final int pageSize,final int currentPage){ final int offset = pageSize*(currentPage-1); return offset; } /*=============================当期页=================================*/ public static int countCurrentPage(int page){ final int curPage = (page==0?1:page); return curPage; } /*============================判断当前页的状态==================================*/ public boolean isFirstPage() { return currentPage == 1; } public boolean isLastPage() { return currentPage == pageSUM; } public boolean isHasPreviousPage() { return currentPage != 1; } public boolean isHasNextPage() { return currentPage != pageSUM; } /*===========================Get/Set方法===================================*/ public List getResultList() { return resultList; } public void setResultList(List resultList) { this.resultList = resultList; } public int getRecordSUM() { return recordSUM; } public void setRecordSUM(int recordSUM) { this.recordSUM = recordSUM; } public int getPageSUM() { return pageSUM; } public void setPageSUM(int pageSUM) { this.pageSUM = pageSUM; } public int getCurrentPage() { return currentPage; } public void setCurrentPage(int currentPage) { this.currentPage = currentPage; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } /*==============================================================*/ }
JSP页面
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <%@ taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'listUser.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> </head> <body> <table border="" > <tr> <td><input type="checkbox"></td><td>用户名</td><td>密码</td><td>性别</td><td>年龄</td><td>邮箱</td><td>地址</td> </tr> <s:iterator value="resultList" id="user"> <tr> <td><input type="checkbox"></td> <td><s:property value="#user.username"/></td> <td><s:property value="#user.password"/></td> <td><s:property value="#user.sex"/></td> <td><s:property value="#user.age"/></td> <td><s:property value="#user.email"/></td> <td><s:property value="#user.address"/></td> </tr> </s:iterator> </table> 共<s:property value="pageBean.recordSUM"/> 条记录 共<s:property value="pageBean.pageSUM"/> 页 当前第<s:property value="pageBean.currentPage"/>页<br/> <s:if test="%{pageBean.currentPage == 1}"> 第一页 上一页 </s:if> <s:else> [url=showUser.action?page=1]第一页[/url] [url=showUser.action?page=<s:property value=]">上一页[/url] </s:else> <s:if test="%{pageBean.currentPage != pageBean.pageSUM}"> [url=showUser.action?page=<s:property value=]">下一页[/url] [url=showUser.action?page=<s:property value=]">最后一页[/url] </s:if> <s:else> 下一页 最后一页 </s:else> </body> </html>
PageServiceImplForUser.java
package com.demo.page; import java.util.List; import com.demo.entity.dao.AdminiDao; import com.demo.entity.dao.UserDao; public class PageServiceImplForUser implements PageService { private UserDao userDao; public UserDao getUserDao() { return userDao; } public void setUserDao(UserDao userDao) { this.userDao = userDao; } public PageBean queryForPage(int pageSize, int currentPage,String hql) { // TODO Auto-generated method stub int recordSUM = userDao.getAllRowCount(hql);//总记录数 int pageSUM = PageBean.countTotalPage(pageSize, recordSUM);//总页数 final int offset = PageBean.countOffset(pageSize, currentPage);//当前页开始记录 final int length = pageSize;//每页记录数 final int page = PageBean.countCurrentPage(currentPage);//当前页 List<AdminiDao> list = userDao.queryForPage(hql,offset, length);//"一页"的记录 //把分页信息保存到Bean中 PageBean pageBean = new PageBean(); pageBean.setPageSize(pageSize); pageBean.setCurrentPage(page); pageBean.setRecordSUM(recordSUM); pageBean.setPageSUM(pageSUM); pageBean.setResultList(list); pageBean.init(); return pageBean; } }
UserDaoImpl.java
package com.demo.entity.dao.Impl; import java.util.ArrayList; import java.util.List; import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction; import org.springframework.orm.hibernate3.support.HibernateDaoSupport; import com.demo.entity.User; import com.demo.entity.dao.UserDao; import com.demo.hibernate.utils.HibernateSessionFactory; public class UserDaoImpl extends HibernateDaoSupport implements UserDao { public int getAllRowCount(String hql) { // TODO Auto-generated method stub Session session=HibernateSessionFactory.getSession(); int i=session.createQuery("from User").list().size(); return i; } public List queryForPage(String hql, int offset, int length) { // TODO Auto-generated method stub List list=new ArrayList(); Session session=HibernateSessionFactory.getSession(); Query query=session.createQuery(hql); query.setFirstResult(offset); query.setMaxResults(length); list=query.list(); return list; } public String addUser(User user) { // TODO Auto-generated method stub Session session=HibernateSessionFactory.getSession(); Transaction tx=session.beginTransaction(); session.save(user); tx.commit(); session.close(); return "success"; } }
ACTION---------> ShowUser.java
package com.demo.action; import java.util.ArrayList; import java.util.List; import com.demo.entity.dao.Impl.AdminiDaoImpl; import com.demo.entity.dao.Impl.UserDaoImpl; import com.demo.page.PageBean; import com.demo.page.PageService; import com.opensymphony.xwork2.ActionSupport; public class ShowUser extends ActionSupport { //通过applicationContext.xml配置文件注入UserService的值 private PageService pageService;//PAGE服务类 private int page; //当第几页 private PageBean pageBean;//包含分布信息的bean private UserDaoImpl userDaoImpl;//用户dao实现 private String hql;//查询SQL private int pageSize;//每页记录数 private List resultList=new ArrayList();//返回结果集 @Override public String execute() throws Exception { //分页的pageBean,参数pageSize表示每页显示记录数,page为当前页 pageBean = pageService.queryForPage(pageSize, page, hql); resultList=userDaoImpl.queryForPage(hql, getFirstNum()-1, pageSize); return "showUser"; } private int getFirstNum(){ if(page==1){ return 1; }else{ return (page-1)*20+1; } } /** * Get/Set方法 */ public PageService getPageService() { return pageService; } public void setPageService(PageService pageService) { this.pageService = pageService; } public int getPage() { return page; } public void setPage(int page) { this.page = page; } public PageBean getPageBean() { return pageBean; } public UserDaoImpl getUserDaoImpl() { return userDaoImpl; } public void setUserDaoImpl(UserDaoImpl userDaoImpl) { this.userDaoImpl = userDaoImpl; } public void setPageBean(PageBean pageBean) { this.pageBean = pageBean; } public String getHql() { return hql; } public void setHql(String hql) { this.hql = hql; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public List getResultList() { return resultList; } public void setResultList(List resultList) { this.resultList = resultList; } }
spring中的配置
<!-- =========================================================================== --> <bean id="showUser" class="com.demo.action.ShowUser"> <property name="PageService" ref="pageServiceForUser"></property> <property name="pageBean" ref="pageBean"></property> <property name="UserDaoImpl" ref="userDao"></property> <property name="page" value="1"></property> <property name="pageSize" value="16"></property> <property name="hql" value="from User"></property> </bean> <!-- =========================================================================== -->
发表评论
-
Struts2 spring Hibernate 案例
2013-06-05 11:34 7051.jsp网站案例(如果不能运行,请导入相应的jar包) -
简单购物车
2013-04-24 09:37 769第一版 第二版加入了分页查询使用SSH框架,类库有点大, ... -
MyBatis 官方例子
2012-10-10 11:25 512http://code.google.com/p/myba ... -
Flex案例
2012-09-22 15:31 849http://www.baitw.com/ ... -
排名系统
2012-07-29 05:12 743package com.demo.hibernate.serv ... -
web项目整合dwr
2012-07-17 17:49 813在web.xml中加入dwr的Servlet <ser ... -
dwr与spring整合
2012-07-17 17:40 787//-------------------------发送简单 ... -
在web项目中引入spring
2012-07-16 10:13 1041在web.xml中添加 <!-- 配置Spring配置文 ... -
下载文件Servlet
2012-07-04 17:31 857package com.baitw.struts.utils; ... -
基于Servlet和Properties的JSP聊天室案例
2012-04-29 18:11 1519package com.demo.service; im ... -
Struts2+Spring+Hibernate分页查询
2012-03-15 14:23 4103<%@ page language="jav ... -
支付宝即时到帐接口调试入口页面
2011-12-27 11:03 4079基础配置类 package com. ... -
支付宝通知页面notify_url、返回页面return_url
2011-12-27 10:43 109730返回页面(return_url文 ... -
支付宝即时到帐接口alipayto.jsp
2011-12-26 11:23 2536<% /* * *功能:即时到帐接口接入页 ... -
信贷管理系统
2011-12-19 17:09 1140源码 -
SSH2集成需要在web.xml中的配置
2011-11-30 13:24 1022<?xml version="1.0" ...
相关推荐
### SSH技术字典与J2EE主流应用框架详解 #### 一、SSH技术概述 SSH(Struts + Spring + Hibernate)是一种广泛应用于Java Web开发的技术组合。它将Struts作为前端MVC框架,Spring用于业务逻辑层管理和控制反转...
两个字母搞定J2EE通用分页标签源代码: <t:p/> 这种标签,就可以在项目中任何JSP页面里打印出分页信息和链接。 效果:http://howsun.blog.sohu.com/90707791.html 该项目是早期的作品,代码不够优雅,请不要见笑。...
SSH(Struts2、Spring、Hibernate)是Java Web开发中的经典技术栈,它结合了MVC模式的Struts2、依赖注入的Spring以及对象关系映射的Hibernate,提供了强大的功能和灵活性。在这个实例中,我们将深入探讨如何在SSH...
Java 2 Platform, Enterprise Edition (J2EE) 是一个开放的、可移植的、多层的企业级应用开发平台,它提供了一个标准的框架来构建分布式、组件化的网络应用程序。J2EE的核心在于其组件模型,包括EJB(Enterprise ...
SSH(Spring、Struts、Hibernate)是Java Web开发的经典组合,这个压缩包中包含了一些关于Spring在实际使用过程中的心得和常见问题的解决方案。 首先,"spring的事务代理.txt"可能涉及到Spring的事务管理。Spring...
SSH,全称Struts2 + Spring + Hibernate,是Java Web开发中广泛使用的三大开源框架的组合。这个框架集成了MVC(Model-View-Controller)设计模式,Spring的依赖注入(Dependency Injection,DI)和面向切面编程...
第一模块以用户身份进行设定,具有图书查询,下单,加入购物车,,购买,评价,退货,个人信息管理等功能。 第二模块是以管理员身份进行设定,具有用户信息管理,图书的增删改查,用户订单管理等功能。 1. 用户信息...
而J2EE(Java 2 Platform, Enterprise Edition)是一个企业级的Java开发平台,提供了多种服务和API来构建分布式、多层的Web应用程序,包括Servlet(服务器端Java小程序)、JSP、EJB(Enterprise JavaBeans)等。...
J2EE(Java 2 Platform, Enterprise Edition)是Java平台的企业版,主要用于开发和部署分布式企业级应用程序。J2EE技术包括一系列标准和规范,如Servlet、JSP(JavaServer Pages)、EJB(Enterprise JavaBeans)、...
教学-传智播客-项目视频经典之作巴巴运动网106集-28将Web层分页封装成通用模块源代码 所需要的jar文件: (一)、Hibernate: 位于 "\hibernate-distribution-3.3.2.GA" 目录下的jar文件: hibernate3.jar 位于 "\...
1. 在Struts2 Action中获取分页参数。 2. 调用Spring Service执行分页查询。 3. 使用Hibernate和PageHelper实现数据库的分页查询。 4. 将分页结果返回给Action,然后传递给视图层展示。 这个通用分页方法适用于不同...
教学-传智播客-项目视频经典之作巴巴运动网106集-27实现Web层的分页功能源代码 所需要的jar文件: (一)、Hibernate: 位于 "\hibernate-distribution-3.3.2.GA" 目录下的jar文件: hibernate3.jar 位于 "\...
2. **实现查询操作业务逻辑层**:在Spring服务层中,创建Service接口及其实现类,定义查询方法,调用持久层的方法,处理业务逻辑,如分页、过滤等。 3. **实现查询操作的业务逻辑控制层**:在Struts2框架下,编写...
淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...
在本篇实训报告中,我们将深入探讨如何使用Java企业版(J2EE)中的SSH(Struts2、Spring、Hibernate)框架技术来构建一个学生信息管理系统。SSH框架是Java开发中广泛采用的一种集成解决方案,它结合了Struts2的MVC...
淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...
淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...
淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...
淘宝开放平台JAVA版SDK top4java 设计原则 容易维护扩展(不需要修改主类就可以添加新的API支持) 注入型解释器(依据不同的返回格式注入相应的解释器) 集中管理请求参数与参数映射 以运行时异常的方式来管理错误的...