天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

json實現(xiàn)jsp分頁實例介紹(附效果圖)

json 在上篇文章已有詳細介紹,json的既簡單易懂,又傳輸迅速。并且能和Javascript很好的融為一體。
在不需要添加jar的前提下,能夠很好完成jsp分頁問題。
下面具體介紹分頁實例:
 
效果如圖所示,采用jsp+servlet技術
首先:編寫一個JavaBean User.Java
復制代碼 代碼如下:
package bean;
public class User {
private int id;
private String name;
private String password;
private int age;
public User() {
super();
}
public User(int id, String name, String password, int age) {
super();
this.id = id;
this.name = name;
this.password = password;
this.age = age;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
//{'id':1,'name':'zhangsan','password':'123','age':1}
return "{'id':"+id+",'name':'"+name+"','password':'"+password+"','age':"+age+"}";
}

}

這里需要注意的 就是 toString的方法的改變
然后:我們來編寫它的control 層和Dao層
為了簡化代碼,便于取值,數(shù)據(jù)庫暫寫為一個集合
可以看到,
1.service 接收request請求 得到頁面所要展示當前頁(為第page頁)
2.創(chuàng)建一個字符串,向內(nèi)依次添加 從數(shù)據(jù)庫DB 得到的user,并將所有數(shù)據(jù)封裝
復制代碼 代碼如下:
[{},{},{}]

3.將此字符串 返回到請求頁面
復制代碼 代碼如下:
package servlet;
import Java.io.IOException;
import Java.io.PrintWriter;
import Java.util.LinkedList;
import Java.util.List;
import Javax.servlet.ServletException;
import Javax.servlet.http.HttpServlet;
import Javax.servlet.http.HttpServletRequest;
import Javax.servlet.http.HttpServletResponse;
import bean.User;
public class Paging extends HttpServlet {
public static final int PER_PAGE = 3;
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//分頁 數(shù)據(jù)源 當前得到第幾頁的記錄 每頁顯示多少條
int page = Integer.parseInt(request.getParameter("page"));
// page = 1 i = 0
//page = 2 3
int length = 0;//記錄當前拿了多少條
StringBuffer sb = new StringBuffer();
sb.append("[");
//[{},{},{}]
String message = null;
if(page >= 1 && page <= 3){
for (int i = (page-1)*PER_PAGE; i < DB.list.size()&&length < PER_PAGE; i++) {
User u = DB.list.get(i);
sb.append(u.toString()+",");
length++;
}
if(length > 0){
message = sb.substring(0, sb.length()-1)+"]";
}else{
message = sb.toString()+"]";
}
}else{
response.setContentType("text/html;charset=utf-8");
response.getWriter().println("搗亂");
return;
}
response.setContentType("text/html;charset=utf-8");
response.getWriter().println(message);
}
}
class DB{
public static List<User> list = new LinkedList<User>();
static{
list.add(new User(1,"zhangsan","zs",34));
list.add(new User(2,"lisi","ls",34));
list.add(new User(3,"a","h",34));
list.add(new User(4,"b","d",34));
list.add(new User(5,"c","g",34));
list.add(new User(6,"d","a",34));
list.add(new User(7,"e","d",34));
list.add(new User(8,"f","e",34));
list.add(new User(9,"g","a",34));
}
}

之后 :jsp的填寫,通過ajax異步提交page,然后得到相應的字符串
復制代碼 代碼如下:
var mgs = xmlHttpRequest.responseText;
var persons = mgs.evalJSON();

將json數(shù)據(jù)解析 并添加到顯示的區(qū)域
復制代碼 代碼如下:
<%@ page language="Java" import="Java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'regist.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<script type="text/Javascript" src="js/prototype1.6.js"></script>
<script type="text/Javascript" src="js/jquery-1.4.4.js"></script>
<script type="text/Javascript">
var paging = 0;
//
function page(p){
/*if(p == 'next' && paging < 3){
paging ++;
}else if(p == 'last' && paging > 1) {
paging --;
}else{
alert('錯誤');
}*/
if(p == 'next' && paging < 3){
paging ++;
if(paging > 1){
$(":button:eq(0)").removeAttr('disabled');
}
if(paging == 3){
$(":button:eq(1)").attr('disabled','disabled');
}
}else if(p == 'last' && paging > 1){
paging --;
$(":button:eq(1)").removeAttr('disabled');
if(paging == 1){
$(":button:eq(0)").attr('disabled','disabled');
}
}
createXmlHttpRequest();
xmlHttpRequest.onreadystatechange=back;
var url = encodeURI("/json_page/Paging?page="+paging);
xmlHttpRequest.open("GET",url,true);
xmlHttpRequest.send(null);
}
//假設名字為xmlHttpRequest
function createXmlHttpRequest(){
if(window.ActiveXObject){
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttpRequest = new XmlHttpRequest();
}
}
//回調(diào)函數(shù)
function back(){
if( xmlHttpRequest.readyState == 4 && xmlHttpRequest.status == 200){
var mgs = xmlHttpRequest.responseText;
var persons = mgs.evalJSON();
//alert(mgs);
$("table").empty();
$("table").append( $("<tr><td>id</td><td>用戶名</td><td>密碼</td><td>age</td></tr>"));
for(var i = 0 ; i < persons.length;i++){
var person = persons[i];
var $tr = $("<tr><td>"+person.id+"</td><td>"+person.name+"</td><td>"+person.password+"</td><td>"+person.age+"</td></tr>");
$("table").append($tr);
}
}
}
</script>
</head>
<body>
<input type="button" disabled="disabled" value="" onclick="page('last');"/><input type="button" value="" onclick = "page('next');"/>
<table>
<tr><td>id</td><td>用戶名</td><td>密碼</td><td>age</td></tr>
</table>
</body>
</html>

另外:要有這兩個js哦
復制代碼 代碼如下:
<script type="text/Javascript" src="js/prototype1.6.js"></script>
<script type="text/Javascript" src="js/jquery-1.4.4.js"></script>

jsp技術json實現(xiàn)jsp分頁實例介紹(附效果圖),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 帅哥男男GV在线1080P | 精品国产乱码久久久久久口爆 | 国产成人女人在线视频观看 | 成年免费三级视频 | 久久久久久久网站 | 国产色婷婷精品人妻蜜桃成熟 | 十八禁肉动漫无修在线播放 | 国产做国产爱免费视频 | 久久极品视频 | 色狠狠xx | 欧美日韩第一区 | 芒果视频看片在线观看 | 久久久无码精品一区二区三区 | 国产精品女上位好爽在线短片 | 伊人久久影院大香线蕉 | 99视频在线精品免费观看18 | 云南14学生真实初次破初视频 | 免费99精品国产人妻自在线 | 91久久线看在观草草青青 | 中文视频在线观看 | 99久久精品国产国产毛片 | 亚洲 自拍 欧洲 视频二区 | 日本人添下面的全过程 | 邪恶肉肉全彩色无遮盖 | 久久re热在线视频精6 | gratis videos欧美最新 | 翁公吮她的花蒂和奶水 | 亚洲AV久久无码精品九号 | 99福利在线 | adc影院欢迎您大驾光临入口 | 国产在线视频一区二区不卡 | 国产精品ⅴ视频免费观看 | 色欲人妻无码AV精品一区二区 | 亚洲精品高清视频 | 久久午夜一区二区 | 翁止熄痒禁伦短文合集免费视频 | 凹凸精品视频分类视频 | 久久er国产精品免费观看2 | 精品久久久麻豆国产精品 | 97亚洲狠狠色综合久久位 | 国产成人亚洲精品午夜国产馆 |