이 기사에서는 데이터 페이징을 구현하기위한 struts2+hibernate 방법을 설명합니다. 다음과 같이 참조에 대해 공유하십시오.
1. 최대 절전 모드를 사용하여 페이징 기술을 구현하십시오.
/*** 페이지 query* @param hql HQL 문을 사용해야합니다. HibernateCallback 객체 목록 목록 = GethibernateTemplate () .ExecuteFind (New HiberNateCallback () {// hibernatecallback 인터페이스 공개 객체 DoinHibernate (세션 세션)에서 구현 해야하는 메소드 hibernateexception, sqlexection {// execute hibernate pagination quernate pagination query query (hibernate paginate query). .SetFirstResult (Offset) .setMaxResults (pagesize) .list (); 반환 목록;} // 총 레코드 수를 가져옵니다. 공개 int getrows (String HQL) {return gethibernateTemplate (). find (hql) .size ();}2. Hibernate에 전화하여 페이징 기술을 실행하고 디스플레이 인터페이스로 이동하십시오.
// paging @suppresswarnings ( "확인되지 않은") public String paging () {String Hql = "From Soce"; // 데이터 테이블 페이징 int pagesize = 3; // 페이지 당 표시되는 레코드 수 int allrows = service.getrows (HQL); // 총 레코드 int AllPage = 0; // 총 페이지 int offset = getPage () + 1; // 첫 번째 레코드의 색인/*if (rows % size! = 0) {pagesize = rows/ size + 1; } else {pagesize = rows / size; }* / allpage = (Allrows -1) / pagesize + 1; // 총 페이지 수 목록을 계산합니다 <SoveRect income = Service.FindBypage (HQL, (Offset-1)*pagesize, pagesize); request.setattribute ( "AllPage", AllPage); request.setAttribute ( "오프셋", 오프셋); request.setAttribute ( "소득", 소득); "페이징"반품;}3.Struts.xml 구성 :
<액션 이름 = "소득"> <!-두 가지 논리적보기에 대한보기 페이지를 구성-> <결과 이름 = "error">/error.jsp </result> <결과 이름 = "페이징">/소득/소득 _list.jsp </result> <결과 이름 = "update">/소득/소득 _edit.jsp </result>
4. 디스플레이 인터페이스 소득 _list.jsp
<%@ page language = "java"pageencoding = "gbk"%> <%@ taglib prefix = "fmt"uri = "http://java.sun.com/jsp/jstl/fmt"%> <%@ taglib prefix = "uri ="/struts-tags "%> <! "-// w3c // dtml 4.01 과도기 // en"> <head> <title> 수익 목록 </title> <meta http-equiv = "no-cache"> <meta http-equiv = "cache-control"content = "no-cache"> http-equiv = "keywords"content = "keyword1, keyword2, keyword3, keyword3"> <meta http-equiv = "description"content = "이것은 내 페이지입니다"> <link rel = "stylesheet"type = "text/css"href = "../ images/styles.css"> <bod> <div> <테이블 Cellpadding = "0 Cellpadding ="0 Cellpadding. align = "center"> <tr> <td> ・ 현재 위치 : 수익 관리 >> 수익보기 </td> </tr> <tr> <td bgcolor = "#ffffff"> <br <brign = "Center"CellPadding = "1"셀 패팅 = "1"Bgcolor = "#036500"#fffff "> <tr. bgcolor = "#fffff"> <td align = "center"> 소득 번호 </td> <td align = "center"> date </td> <td align = "center"> method </td> <td align = "center"> 양 </td> <td align = "center </td> <td align ="> source "> source"> source "> align = "center"> align = "center"> 직원 </td> <td align = "center"> note </td> <td align = "center"> Operation </td> </tr> <s : iterator value = "#request.ecome"> <tr bgcolor = "#fffff"> align = "center"> <s : date name = "date"format = "yyyy-mm-dd"/> </td> <td align = "center"> <s : property value = "money"/> </td> <td align = "center"> <s : 속성 값 = "project"/> </td> <td align = "center"> align = "center"> <s : 속성 값 = "인원"/> </td> </td> <td align = "center"> <s : "속성 값 ="비고 "/> </td> <td align ="center "> <s :"starits "/</td> <td align ="center "> $ {id}? ')) location ='소득! 소득! del? id = $ {id} ' "> delete </a> <a href ="javaScript : if (확인 ('$ {id}? ')) 위치 ='소득! updateto? id = $ {id} ' "> modify </a> </td> </td> </td> </td> </td> </td>. <center> 총 $ {allpage} 페이지가 있습니다. 현재 $ {allpage} 페이지가 있습니다. 현재 $ {offset} page <a href = "소득! paging? paging? page = 0"> <font size = "2"color = "blue"> home </font> </a> <a href = "javaScript : if ($ {attresset}> 1) incoun! size = "2"color = "red"> 이전 페이지 </font> </a> <a href = "javaScript : if ($ {offset} <$ {allpage} {allpage}) location = '소득! paging? paging? page = $ {page+1}'"> <font size = "2"color = "red"> 다음 페이지 </font> </a> <a href = "소득! 페이징? page = $ {allpage-1}"> <font size = "2"color = "blue"> 마지막 페이지 </font> </a> </td> </tr> </div> </body>5. Pagination 결과 :
이 기사는 기본 데이터베이스에서 구현을 제공하지 않지만 페이징 원칙을 마스터하는 한 큰 문제가 아니라고 생각합니다. 특정 페이징 원칙은 이전 기사를 참조하십시오. "최대 절전 모드 프레임 워크 데이터 페이징 기술 예제 분석"
이 기사의 설명이 최대 절전 모드 프레임 워크를 기반으로 한 모든 사람의 Java 프로그래밍에 도움이되기를 바랍니다.