前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Struts+Hibernate+jsp页面,实现分页

Struts+Hibernate+jsp页面,实现分页

作者头像
ydymz
发布2018-09-10 15:34:13
2.6K0
发布2018-09-10 15:34:13
举报
文章被收录于专栏:lgp20151222lgp20151222

dao层代码

代码语言:javascript
复制
package com.hanqi.dao;

import java.util.ArrayList;
import java.util.List;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;

import com.hanqi.utility.USer;

public class USerDAO 
{
        private Configuration cfg = null ;
        private ServiceRegistry sr = null ;
        
        private SessionFactory sf = null ;
        private Session se = null ;
        Transaction ts = null ;
        
        
        public USerDAO()
        {
            //初始化Hibernate
            cfg = new Configuration().configure() ;
            
            sr = new StandardServiceRegistryBuilder().applySettings(cfg.getProperties()).build() ;
            
        }
        
        public void init()
        {
            sf = cfg.buildSessionFactory(sr) ;
            
            se = sf.openSession() ;
            
            ts = se.beginTransaction() ;
        }
        
        
        public void destory()
        {
            ts.commit() ; 
            
            se.close() ;
            
            sf.close() ; 
        }
        
        
        
        //查询列表
        public List<USer> getAll(int page)
        {
            List<USer> list = new ArrayList<>() ;
            
            init() ;
            
             //设置每页两行及起始页
            list = se.createQuery("from USer").setMaxResults(2)
                        .setFirstResult((page-1)*2).list() ;
            
            destory();
            
            return list;
        }
}

jsp页面

代码语言:javascript
复制
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="addUSer">添加用户</a>
<br><br>
<a href="selectUSer?pages=1" >用户列表</a>
</body>
</html>
代码语言:javascript
复制
<%@page import="com.hanqi.utility.USer"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%

List<USer> list = (List<USer>)request.getAttribute("selectuser") ;

for(USer us : list )
{
    out.print(us + "<a href='deleteuser?user_id="+us.getUser_id()+"'>    【删除】</a>"
                        +"<a href='modify?userid="+us.getUser_id()+"'>    【修改】</a>"
                            +"<br>") ;
}
int pages = Integer.parseInt(request.getParameter("pages")) ;

%>

<% if(list.size()==0){response.getWriter().write("页码超出范围") ;
                                response.setHeader("refresh", "3;url=selectUSer?pages=1") ;}else{ %>
<%%>
<a href="selectUSer?pages=<%=pages-1%>">上一页</a>
<a href="selectUSer?pages=<%=pages+1%>">下一页</a>
<%} %>
</body>
</html>

Struts文件配置

代码语言:javascript
复制
<!-- 查询全部 -->
        <action name="selectUSer" class="com.hanqi.action.USerAction" method="selectUSer">
        
                <result name="fail">/WEB-INF/pages/fail.jsp</result>
        
                <result name="success">/WEB-INF/pages/selectUSer.jsp</result>
        
        </action>

 service层方法

代码语言:javascript
复制
public String selectUSer()
    {
        String rtn = "fail" ;
        
        try
        {//得到原生request
            HttpServletRequest hsr = ServletActionContext.getRequest() ;
            
            int page = Integer.parseInt(hsr.getParameter("pages")) ;
            
            //page = Integer.parseInt(hsr.getParameter("pagess")) ;
            //调用查询的方法
            List<USer> list = new UserService().getAll(page);
            
            hsr.setAttribute("pages", page+1);
            
            hsr.setAttribute("selectuser", list);
        
            rtn = "success" ;
        }catch(Exception e)
        {
            e.printStackTrace();
        }
        
        return rtn;
    }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档