分页ajax+springmvc的简单实现

时间:2023-03-08 20:12:52
分页ajax+springmvc的简单实现

页面部分源码:

 <li class="paginItem"><a href="javascript:getNewsList(2);">2</a></li>

javascript部分:

 function getNewsList(page){

       $.ajax({
//提交数据的类型 POST GET
type:"POST",
//提交的网址
url:"ajax_handle?method=getNewsList&page="+page,
//提交的数据
data:{},
//返回数据的格式
datatype: "json",//"xml", "html", "script", "json", "jsonp", "text".
//在请求之前调用的函数
beforeSend:function(){},
//成功返回之后调用的函数
success:function(data){
// window.location.href="main";
$(".news_list").html(data.responseContext);
$(".paginItem").each(function(){
$(this).removeClass('current');
});
$(".paginItem").eq(page).addClass("current");
$(".blue").eq(1).html(page); },
//调用执行后调用的函数
complete: function(XMLHttpRequest, textStatus){ },
//调用出错执行的函数
error: function(){
//请求出错处理
}
});
}

springmvc Controller部分:

 package com.zqc.share.manager.ajax;

 import javax.servlet.http.HttpServletRequest;

 import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody; import com.zqc.share.manager.qrymodel.NewsListPage;
import com.zqc.share.manager.qrymodel.NewsPage;
import com.zqc.share.manager.qrymodel.UserListPage;
import com.zqc.share.manager.qrymodel.UserPage;
import com.zqc.share.manager.service.NewsService;
import com.zqc.share.manager.service.UserService; @Controller
public class AjaxController { private String path;
private String basePath; @Autowired
NewsService newsService; @Autowired
UserService userService; @ResponseBody
@RequestMapping(value = "/ajax_handle")
public com.zqc.share.manager.model.ResponseBody ajax_handle(@RequestParam("method") String method,HttpServletRequest request) {
path = request.getContextPath();
basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
com.zqc.share.manager.model.ResponseBody responseBody = new com.zqc.share.manager.model.ResponseBody();
String responseContext = new String();
switch(method){
case "getNewsList":
int page = Integer.parseInt(request.getParameter("page"));
responseContext = getNewsList(page);
break;
case "getUserList":
int page2 = Integer.parseInt(request.getParameter("page"));
responseContext = getUserList(page2);
break; }
responseBody.setResponseContext(responseContext);
return responseBody;
} private String getNewsList(int page){
NewsPage newsPage = new NewsPage();
newsPage.setPage(page);
newsPage.setSize(3);
NewsListPage newsListPage = new NewsListPage();
newsListPage = newsService.getNewsList(newsPage);
String html = "";
for(NewsPage newsPage2 : newsListPage.getNewsPageList())
html = html + String.format("<tr>"+
"<td class='imgtd'><img src=\""+basePath+"images/%s\" /></td>"+
"<td><a href='#'>%s</a><p>发布时间:%s</p></td>"+
"<td>%s<p>ID: 82122</p></td>"+
"<td>%s</td>"+
"<td>%s</td>"+
"<td>已审核</td>"+
"<td>%s</td>"+
"</tr>", newsPage2.getHead_image(),newsPage2.getTitle(),newsPage2.getPublishtime(),newsPage2.getDescription(),
newsPage2.getTopic().getName(),newsPage2.getUser().getName(),newsPage2.getReadtimes()); String responseContext = null;
responseContext = html;
return responseContext;
}
}

service层部分:

 package com.zqc.share.manager.service;

 import org.springframework.stereotype.Service;

 import com.information.config.Config;
import com.zqc.share.manager.framework.HttpProxy;
import com.zqc.share.manager.model.ResponseBody;
import com.zqc.share.manager.qrymodel.NewsListPage;
import com.zqc.share.manager.qrymodel.NewsPage; @Service
public class NewsService { public NewsListPage getNewsList(NewsPage newsPage){
String url = "http://localhost:8080/share-controller/getNewsListByPage" + "?p=" +Config.keystr + "|" +Config.token;
NewsListPage newsListPage = null; String responseBodyString = HttpProxy.post(url, newsPage, "utf-8");
if(responseBodyString == null || responseBodyString.equals(""))return new NewsListPage(); ResponseBody responseBody = (ResponseBody) HttpProxy.getObject(responseBodyString);
String responseContextString = responseBody.getResponseContext();
newsListPage = (NewsListPage) HttpProxy.getObject(responseContextString, NewsListPage.class);
return newsListPage;
} }

所需的model,以及服务端接口自行替换即可

部分内容请参考:

http://www.cnblogs.com/yzwhykd/p/5868070.html