请选择 进入手机版 | 继续访问电脑版

好优扒教育

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 8198|回复: 4

Msql分页-16-2019.4.30/5.5

[复制链接]

55

主题

153

帖子

975

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
975
发表于 2019-4-30 20:46:53 | 显示全部楼层 |阅读模式
Mysql分页工具类



package page.haou8.com;
import database.haou8.com.*;
import java.sql.*;
public class PageToolsMysql {
private int ResultCount=0;//总记录数
private int PageSize=30;//每页多少条记录

private int Page=1; //当前页
private int PageFist=1;//首页
private int PagePrev=1; //上页
private int PageNext=1;//下页
private int PageLast=1;//尾页
private int PageCount=0;//页数
private int offset=0;
private void PageInit(int resultCount,int pageSize){  
  PageCount=resultCount/pageSize;
  if(resultCount%pageSize!=0)
   PageCount++;  
}
public int getOffset() {
  offset=(Page-1)*PageSize;
  return offset;
}
public void setOffset(int offset) {
  this.offset = offset;
}
private String strSQL="";
public PageToolsMysql(){
  
}
public int getResultCount() {
  return ResultCount;
}
public void setResultCount(int resultCount) {
  ResultCount = resultCount;
  PageInit(resultCount,PageSize);
}
public int getPageSize() {
  return PageSize;
}
public void setPageSize(int pageSize) {
  PageSize = pageSize;
  PageInit(ResultCount,PageSize);
}
public int getPage() {
  return Page;
}
public void setPage(int page) {
  Page = page;
  this.PageFist=1;
  if(page>1)
   this.PagePrev=page-1;
  else
   this.PagePrev=1;
  if(page>=this.PageCount)
   this.PageNext=this.PageCount;
  else
   this.PageNext=page+1;
  this.PageLast=this.PageCount;
}
public int getPageFist() {
  return PageFist;
}
public void setPageFist(int pageFist) {
  PageFist = pageFist;
}
public int getPagePrev() {
  return PagePrev;
}
public void setPagePrev(int pagePrev) {
  PagePrev = pagePrev;
}
public int getPageNext() {
  return PageNext;
}
public void setPageNext(int pageNext) {
  PageNext = pageNext;
}
public int getPageLast() {
  return PageLast;
}
public void setPageLast(int pageLast) {
  PageLast = pageLast;
}
public int getPageCount() {
  return PageCount;
}
public void setPageCount(int pageCount) {
  PageCount = pageCount;
}
public String getStrSQL() {
  
  return strSQL+" limit "+this.getOffset()+","+this.PageSize;
}
public void setStrSQL(String strSQL) {
  eduConnection con=new eduConnection();
  con.getConnection();
  
  ResultSet rs=null;
  String sql="select count(*) as aa from ("+strSQL+") as a ";
  
  try{  
   rs=con.ExecuteQuery(sql);
   if(rs!=null && rs.next()){
    this.ResultCount=rs.getInt(1);
   }
   else
    this.ResultCount=0;
  System.out.println(sql);
  rs.close();
  con.close();
  rs=null;
  con=null;
  PageCount=this.ResultCount/PageSize;
  if(this.ResultCount%PageSize!=0)
   PageCount++;
  this.PageInit(ResultCount, PageSize);
  }
  
  catch(Exception e){
   
   System.out.println(e.getMessage());
  }
  
  this.strSQL = strSQL;
}

}

回复

使用道具 举报

55

主题

153

帖子

975

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
975
 楼主| 发表于 2019-4-30 20:47:56 | 显示全部楼层
admin_edu/admin_list2.jsp



<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="database.haou8.com.*" %>
<%@ page import="page.haou8.com.*" %>
<%@ page import="java.sql.*" %>
<%
        request.setCharacterEncoding("utf-8");
        String pathfile=request.getRequestURI();
        //out.print(pathfile);
        String zh=request.getParameter("zh");
        if (zh==null)
                zh="";
%>
<!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>后台管理</title>
</head>
<body>
欢迎使用后台管理。<br>
<form action="" method="post">
请输入账号<input type=text id=zh name=zh value="<%=zh%>">
<input type=submit id=op name=op value="检索">
</form>
<table>
        <tr>
                <td width=50>序号</td>
                <td width=150>账号</td>
                <td  width=150>操作</td>
        </tr>
<%               
        int i=0;       
        /////////////////////获取根据检索的要求相应的SQL语句----Start//////////////////////////
        String op=request.getParameter("op");       
        String strSQL="select * from edu_admin";       
        String strPage=request.getParameter("page");
        if(strPage==null)strPage="1";
        if(op!=null)
                strSQL+=" where loginid_admin like '%"+request.getParameter("zh")+"%'";
        /////////////////////获取根据检索的要求相应的SQL语句---End//////////////////////////
       
        ///////////////////分页处理开始/////////////////////////////////////////
        PageToolsMysql pagetools_mysql=new PageToolsMysql();       
        int Page=1;
        int PageSize=20;
        if(strPage!=null)
                Page=Integer.parseInt(strPage);       
        pagetools_mysql.setPageSize(PageSize);//1-设置页的大小
        pagetools_mysql.setStrSQL(strSQL);//2设置SQL语句
        pagetools_mysql.setPage(Page);//3 设置当前页
       
        strSQL=pagetools_mysql.getStrSQL();//4 获得当前页的SQL语句
        out.print(strSQL);       
        eduConnection con=new eduConnection();
        con.getConnection();
        ResultSet rs=con.ExecuteQuery(strSQL);
       
        ///////////////////分页处理结束/////////////////////////////////////////
        ///////////////////分页显示内容/////////////////////////////////////////
        while(rs!=null && rs.next()){
        i++;
%>
        <tr>
                <td><%=i %></td>
                <td><%=rs.getString("loginid_admin") %></td>
                <td>
                        <a href="pass_modi.jsp?loginid_admin=<%=rs.getString("loginid_admin") %>">修改密码</a>
                        <a href="admin_del.jsp?loginid_admin=<%=rs.getString("loginid_admin") %>">|删除</a>
                </td>
        </tr>               
<%
        }       
        /////////////////分页显示结束///////////////////////////////////////
%>
</table>
<!-- 显示页的导航信息 -->
<%
        int PageFisrt=pagetools_mysql.getPageFist();
        int PagePrev=pagetools_mysql.getPagePrev();
        int PageNext=pagetools_mysql.getPageNext();
        int PageLast=pagetools_mysql.getPageLast();
%>
<form action="<%=pathfile %>" method="post" id=theform name=theform>
共<%=pagetools_mysql.getResultCount() %>条&nbsp;<%=pagetools_mysql.getPage() %>/<%=pagetools_mysql.getPageCount() %>
<input type=hidden id=zh name=zh value="<%=zh %>">
<input type=submit id=op name=op value="首页">
<input type=submit id=op name=op value="前页">
<input type=submit id=op name=op value="后页">
<input type=submit id=op name=op value="尾页">
<input type=submit id=op name=op value="转到">
<input type=text id=page name=page value="<%=strPage%>" style="width:35px">页
</form>

<br>
<a href="admin_add.jsp" target=_blank>
添加管理员请点击这里</a>
</body>
</html>

回复 支持 反对

使用道具 举报

55

主题

153

帖子

975

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
975
 楼主| 发表于 2019-5-5 20:35:54 | 显示全部楼层
/show_article.jsp 中内容分页

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="database.haou8.com.*" %>
<%@ page import="java.sql.*" %>
<!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>
<%

        request.setCharacterEncoding("utf-8");
        int i=0;
        String strPage=request.getParameter("page");
        if(strPage==null)strPage="1";
        int Page=Integer.parseInt(strPage);
        String id_class=request.getParameter("id_class");
        if(id_class==null){
                out.print("参数错误!");
        }
        else{
       
                String strSQL="select * from edu_article where id_class='"+id_class+"'";
                eduConnection con=new eduConnection();
                String content="";
                con.getConnection();
                ResultSet rs=con.ExecuteQuery(strSQL);
                if(rs!=null && rs.next()){
                        i++;
                        content=rs.getString("content");
                        String []strPagecontent=content.split("PageNext");       
                        int len=strPagecontent.length;
                        //out.print("<textarea style=\"width:100%;height:500px\">");
                        if(Page>len)
                        {
                                out.print("分页错误");
                               
                        }
                        else
                        {
                                out.print(strPagecontent[Page-1]);
                        }
                       
                        //out.print("</textarea>");
                        out.print("<hr color=blue>");
                        strPagecontent=null;
                       
                        for(i=0;i<len;i++){
                                out.print("<a href=show_article.jsp?id_class="+id_class+"&page="+(i+1)+">");
                                if(i+1==Page)
                                        out.print("<strong><font color=red>"+(i+1)+"</font></strong>");
                                else
                                        out.print((i+1));
                                out.print("&nbsp;</a>");
                       
                               
                        }
                }
                if(i==0){
                        response.sendRedirect("main.jsp");
                }
        }
%>

</body>
</html>

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


关注微信公众号

Archiver|手机版|小黑屋|好优扒教育 ( 皖ICP备14016797号-2

GMT+8, 2019-8-26 17:24 , Processed in 0.093750 second(s), 24 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表