Jsp分页显示示例

Jsp连接MySQL需要引入一个mysql-connector-java-5.1.18-bin.jar抱,直接拷贝到工程的WebRoot--WEB-INT--lib目录下即可。MyEclipse会自动把它生成到Web App Libraries目录下。

下面是一个分页显示的示例:(连接数据库,数据库名字为nba,表为nbaTeam,表中内容如下所示)

<%@ page language="java" contentType="text/html" import="java.sql.*" pageEncoding="utf-8"%>

<html>
     <head>
     	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
     	<title>分页浏览记录</title>
     </head>
     
     <body>
     	<center>
     		分页显示记录内容
     		<hr>
     		<table align="center" border="1" bgcolor="#38B0DE">
     			<tr>
     				<th>编号</th>
     				<th>队名</th>
     				<th>所属联盟</th>
     				<th>所在城市</th>
     				<th>总冠军数</th>
     			</tr>
     			
     			<%
     				String driver = "com.mysql.jdbc.Driver";
     				String url = "jdbc:mysql://localhost:3306/nba";
     				String user = "sa";
     				String password = "123";
     				Class.forName(driver);
     				Connection dbconn = DriverManager.getConnection(url, user, password);
     				
     				int intPageSize;  //一页显示的记录数
     				int intRowCount;  //记录总数
     				int intPageCount; //总页数
     				int intPage;      //待显示页码
     				
     				String strPage;
     				int i;
     				intPageSize = 10; //设置一页显示的记录数
     				strPage = request.getParameter("page");  //取得待显示页码
     				if(strPage == null){
     					intPage = 1;
     					/*表明在QueryString中没有page这一个参数,此时显示第一页数据 */
     					}else{
     					//将字符串转换成整型
     					intPage = java.lang.Integer.parseInt(strPage);
     					if(intPage<1)
     						intPage = 1;
     						}
     				
     				Statement stmt = dbconn.createStatement();
     				String sql = "select * from nbaTeam order by 编号 ";
     				ResultSet rs = stmt.executeQuery(sql);
     				rs.last();  //光标指向查询结果集中最后一条记录
     				intRowCount = rs.getRow();  //获取记录总数
     				intPageCount = (intRowCount+intPageSize-1)/intPageSize; //记算总页数
     				if(intPage>intPageCount)
                        intPage = intPageCount; //调整待显示的页码
                    if(intPageCount>0){
                        rs.absolute((intPage-1) * intPageSize + 1); 
                        //将记录指针定位到待显示页的
                        //显示数据
                       i = 0;
                        while(i<intPageSize && !rs.isAfterLast()){%>
                       
                        <tr>
			                <td><%=rs.getInt("编号") %> </td>
			                <td><%=rs.getString("队名") %> </td>
			                <td><%=rs.getString("所属联盟") %> </td>
			                <td><%=rs.getString("所在城市") %> </td>
			                <td><%=rs.getInt("总冠军数") %> </td>
                        </tr>
                        
                     	<%
                     		rs.next();
                     		i++;
                     		 }
                     		}
                     	 %>
     				
     		</table>
     		<hr>
            <div align="center">
             	   第 <%=intPage%> 页   共 <%=intPageCount%> 页
                <%
                	if(intPage<intPageCount){
                %>
                	<a href="index.jsp?page=<%=intPage+1%>">下一页</a>
                <%
                	 }
                 	if(intPage>1){%>
                	<a href="index.jsp?page=<%=intPage-1%>">上一页</a>
                <%
                 	}
                    	rs.close();
                    	stmt.close();
                    	dbconn.close();
                 %>
            </div>
                	
     	</center>  	
     </body>
</html>
     






猜你喜欢

转载自blog.csdn.net/u013941991/article/details/38819915