jsp data paging

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@page import="java.sql.*"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>分页</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
</head>
<body>
    
    <table border="1" width="80%" align="center" cellpadding="5" cellspacing="0">
    
        <tr>
            <td>编号</td>
            <td>姓名</td>
            <td>年龄</td>
            <td>性别</td>
        </tr>
        <%
        //获取参数
        String s = request.getParameter("pageNow");
        
        int pageSize = 5; //一页记录的条数
        int lineCount;    //数据总数
        int pageCount;    //分页数目
        int pageNow = 1;  //当前页数
        
        if(s!=null)
        {
    
    
        	pageNow = Integer.parseInt(s);
        }
        
        String driverName = "com.mysql.jdbc.Driver";
		String url = "jdbc:mysql://localhost:3306/emis";//注意:URL间不能有空格
		String User = "root";  //默认用户名
		String PassWord = "root";  //密码
	 	String sql = "select count(*) from s ";
	
		 
		   Class.forName(driverName);//加载JDBC驱动
		  //连接服务器和数据库
		   Connection conn = DriverManager.getConnection(url, User, PassWord);
	       PreparedStatement ps=conn.prepareStatement(sql); 
	       ResultSet rs = ps.executeQuery();
	       rs.next();
	       
	       lineCount = rs.getInt(1);//获取总行数
	       
	       //求出总页数
	       pageCount = lineCount % pageSize 
	    		   ==0?lineCount/pageSize:lineCount/pageSize+1;
	       
	       /*limit 第一个?是起始位置,下标为0;第二个?是总条数*/
	       ps = conn.prepareStatement("select * from s limit ?,?");
	       ps.setInt(1,pageSize*(pageNow-1));
	       ps.setInt(2,pageSize);
	       rs = ps.executeQuery();
	       
	       while(rs.next())
	       {
    
    
	    	   %>
	    	   <tr>
		            <td> <%= rs.getInt(1)%> </td>
		            <td> <%= rs.getString(2)%> </td>
		            <td> <%= rs.getInt(3)%> </td>
		            <td> <%= rs.getString(4)%> </td>
	        	</tr>
	      <%
	      }
	       rs.close();
	       ps.close();

		  %> 
		  
	<tr >
	  <td colspan="8" align="center">
    <%
        for(int i = 1 ; i<= pageCount ; ++i) {
    
    
     %>
     
     <a href="datapaging.jsp?pageNow=<%=i %>"> <%=i %></a>
     <%
    
     		} 
     %>
         <br><br>
         <a href="datapaging.jsp?pageNow=1">首页</a>
         <a href="datapaging.jsp?pageNow=<%= pageNow-1>=1?pageNow-1:1 %>">上一页</a>
         <a href="datapaging.jsp?pageNow=<%=pageNow+1<pageCount?pageNow+1:pageCount %>">下一页</a>
         <a href="datapaging.jsp?pageNow=<%=pageCount %>">尾页</a>
         <br>
         <%= pageNow+"/"+pageCount %>
         </td>
     </tr>                                        
    	</table>      
</body>
</html>

Guess you like

Origin blog.csdn.net/m0_46267375/article/details/105802077