最近JSP课程实训,然后自己做了一个新闻后台控制台。新闻列表的展示如果不用页面部分刷新(Ajax)来做的话,翻页的时候会重刷新页面(感觉很难看··),所以决定根据书上的例子+搜索的代码用Ajax来实现分页功能,顺便搞了个用PHP实现的 :)
JSP
· 在JavaBean中实现数据库连接和格式化(JSON)从数据库查询到的数据
public UserDAO() { //连接数据库连接 Connection conn; Statement state; ResultSet rs; if (conn == null) { try { Class.forName("com.mysql.jdbc.Driver"); //数据库使用MySQL.加载驱动 conn = DriverManager.getConnection("jdbc:mysql://localhost/DBname", "userName", "pwd"); } catch (Exception e) { e.printStackTrace(); } } }public String getUsers() { //格式化数据 StringBuffer sb = new StringBuffer(); sb.append("{newsList:["); try { if (conn == null) System.out.println("can not connection Database!"); state = conn.createStatement(); rs = state.executeQuery("select * from news"); while (rs.next()) sb.append("{title:'" + rs.getString("title") + "',content:'" + rs.getInt("content") + "'},"); sb.delete(sb.length() - 1, sb.length()); sb.append("]}"); } catch (SQLException e) { e.printStackTrace(); } finally { try { rs.close(); state.close(); } catch (SQLException e) { e.printStackTrace(); } } return sb.toString(); }
· 声明XMLHttpRequest对象
// JavaScript Documentfunction createXMLHttpRequest() { var xmlHttp=false; if (window.ActiveXObject) { //在IE浏览器中创建XMLHttpRequest对象 try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch(ee) { xmlHttp=false; } } } else if (window.XMLHttpRequest) { //在非IE浏览器中创建XMLHttpRequest对象 try { xmlHttp = new XMLHttpRequest(); } catch(e) { xmlHttp=false; } } return xmlHttp;}
· index.html
· index.jsp
<%@ page language="java" import="java.util.*,com.*" pageEncoding="UTF-8"%><% UserDAO ud=new UserDAO(); //实例化JavaBean out.print(ud.getUsers());%>
p.s: 效果图就是经常看到的在网页下面的那种分页栏··
PHP
· index.php
数据分页显示
· resultPage.php
\n"; echo "\n"; echo "标题内容"; for($a=0;$a<$num;$a++) { echo "\n"; echo "".$title[$a].""; echo " ".$content[$a].""; echo ""; } echo "\n"; echo " "; echo "
"; echo " "; echo " 第".$page."页/总".$pages."页 | 总".$numrows."条 | "; if ($page>1) echo " 首页 | "; if ($page>1) echo " 上页 | "; if ($page<$pages) echo " 下页 | "; if ($page<$pages) echo " 尾页"; echo " 转到第 页 "; echo " ";?>
以上。