Pagination

xiaoxiao2021-03-05  25

(1) Pieces Control class

/ * @Author Nick

* CREATED ON 2004-3-18

* File Name: PageController.java

*

*

* /

Package com.tower.util;

/ **

* @Author Nick

* 2004-3-18

* Used to turn page control

*

* /

Public class pageController {

INT TOTALROWSAMOUNT; / / total number

Boolean rowsamountset; // Whether to set TOTALROWSAMOUNT

INT PageSize = 2; // Variety per page

INT CurrentPage = 1; // Current page number

Int nextpage;

INT Previouspage;

INT TOTALPAGES; / / total page

Boolean Hasnext; // Is there a next page

Boolean Hasprevious; // Is there a previous page

String description;

INT PagestartRow;

Int pagendrow;

Public pageController (int Totalrow) {

SetTotAlrowsAmount (TotalRows);

}

Public pageController () {}

/ **

* @Param I

* Set the total number of lines

* /

Public void settotalrowsamount (int i) {

IF (! this.rowsamountset) {

Totalrowsamount = i;

Totalpages = Totalrowsamount / Pagesize 1;

SetCurrentPage (1);

THIS.ROWSAMOUNTSET = TRUE;

}

}

/ **

* @Param I

*

* current page

*

* /

Public void setCurrentPage (INT i) {

CurrentPage = i;

NextPage = CURRENTPAGE 1;

PreviousPage = CURRENTPAGE-1;

// Calculate the current page to start rows and end lines

CurrentPage * Pagesize

PageEndrow = CURRENTPAGE * PAGESIZE

PagestRow = PageEndrow-Pagesize 1;

} else {

PageEndrow = TotalRowsamount;

PageStartrow = PageSize * (Totalpages-1) 1;

}

/ / Is there a previous page and

IF (NextPage> Totalpages) {

Hasnext = FALSE;

} else {

Hasnext = True;

}

IF (previouspage == 0) {

HaspRevious = false;

} else {

Hasprevious = true;

}

System.out.println (this.Description ());

}

/ **

* @Return

* /

Public int getcurrentpage () {

Return CurrentPage;

}

/ **

* @Return

* /

Public boolean ishasnext () {

Return hasnexT;

}

/ **

* @Return

* /

Public boolean ishasis () {

Return Hasprevious;

}

/ **

* @Return

* /

Public int getNextPage () {Return nextPage;

}

/ **

* @Return

* /

Public int getpagesize () {

Return PageSize;

}

/ **

* @Return

* /

Public int getPreviouspage () {

Return Previouspage;

}

/ **

* @Return

* /

Public int gettotalpages () {

Return Totalpages;

}

/ **

* @Return

* /

Public int gettotalrowsamount () {

Return TotalrowsAmount;

}

/ **

* @Param B

* /

Public void sethasnext (boolean b) {

Hasnext = B;

}

/ **

* @Param B

* /

Public void setHasprevious (Boolean B) {

HaspRevious = B;

}

/ **

* @Param I

* /

Public void setnextPage (INT i) {

NextPage = i;

}

/ **

* @Param I

* /

Public void setpageSize (int i) {

PageSize = i;

}

/ **

* @Param I

* /

Public void setpreviouspage (int i) {

Previouspage = i;

}

/ **

* @Param I

* /

Public void setTotalpages (INT I) {

Totalpages = i;

}

/ **

* @Return

* /

Public int getpagendrow () {

Return PageEndRow;

}

/ **

* @Return

* /

Public int getpagestRow () {

Return PagestartRow;

}

Public string getdescription () {

String description = "Total:" this.gettotalrowsamount ()

"items" this.gettotalpages () "pages";

// this.currentpage "previous" this.hasprevious

// "Next:" this.hasnext

// "START ROW:" this.pagestRow

// "End Row:" this.pageendrow;

Return description;

}

Public string description () {

String description = "Total:" this.gettotalrowsamount ()

"items" this.gettotalpages () "Pages, Current Page:"

THIS.CURRENTPAGE "previous" this.hasprevious

"Next:" this.hasnext "Start Row:" this.pagestRow

"End Row:" this.pageendrow;

Return description;

}

Public static void main (string args []) {

PageController PC = New PageController (3);

System.out.println (pc.getdescription ());

// pc.setcurrentpage (2);

// system.out.println (pc.description ());

// pc.setcurrentpage (3);

// system.out.println (pc.description ());

}

}

(2) Query the code snippet of Action

Public ActionForward Execute

ActionMapping mapping,

Actionform Form,

HTTPSERVLETREQUEST REQUEST,

Httpservletresponse response

Throws exception {

Base queryform = (base) form;

IF (! queryform.getname (). Equals ("")) {

PageController PC = New PageController ();

Employeebase service = new EmployeeBase ();

ArrayList Result = (arraylist) Service.Search (Queryform, PC);

HttpSession session = request.getations ();

Session.setttribute ("Queryform", queryform);

Session.SetaTRibute ("PageController", Service.getPageController ());

Request.setattribute ("QueryResult", Result;

Request.setttribute ("PageController", Service.getPageController ());

Return mapping.findforward ("haveresult");

} else {

Return mapping.findforward ("noresult");

}

}

(3), page the code snippet

Public ActionForward Execute

ActionMapping mapping,

Actionform Form,

HTTPSERVLETREQUEST REQUEST,

Httpservletresponse response

Throws exception {

// Read forward page parameters

TurnPageform Turnpageform = (TurNPageform) Form;

/ / Take the query information from the PageController and use the call interface processing result provided by Bean.

HttpSession session = request.getations ();

PageController PC = (pageController) session.getattribute ("PageController");

Base queryform = (base) session.getattribute ("queryform"); pc.setcurrentpage (TurnPageform.getViewPage ());

Employeebase service = new EmployeeBase ();

ArrayList Result = (arraylist) Service.Search (Queryform, PC);

/ / Write data to request according to parameters

Request.RemoveAttribute ("queryResult");

Request.RemoveAttribute ("PageController");

Request.setattribute ("QueryResult", Result;

Request.setttribute ("PageController", PC);

// forward to the display page

Return mapping.findforward ("haveresult");

}

(4) Database Access to Pieces in Beans

Public Collection Search (Base Base, PageController PC)

Throws sqlexception {

ArrayList Emps = new arraylist ();

ResultSet RS = GetSearchResult (BASE);

Rs.absolute (-1);

Pc.SettotAlrowsamount (Rs.Getrow ());

SETPAGECONTROLLER (PC);

IF (rs.getrow ()> 0) {

rs.absolute (pc.getpagestartrow ());

Do {

System.out.println ("in loop" qGetrow ());

Base b = new base ();

B.setname (rs.getstring ("name");

B.setidcard (rs.getstring ("iDCard"));

System.out.println ("from DB:" rs.getstring ("iDCard"));

Emps.Add (b);

IF (! rs.next ()) {

Break;

}

} while (rs.getrow () <(pc.getpageendrow () 1));

}

Return EMPS;

}

(5) Code pieces in JSP

Previous

NEXT

转载请注明原文地址:https://www.9cbs.com/read-36285.html

New Post(0)