页面部分源码:
<li class="paginItem"><a href="javascript:getNewsList(2);">2</a></li>
javascript部分:
1 function getNewsList(page){ 2 3 $.ajax({ 4 //提交数据的类型 POST GET 5 type:"POST", 6 //提交的网址 7 url:"ajax_handle?method=getNewsList&page="+page, 8 //提交的数据 9 data:{}, 10 //返回数据的格式 11 datatype: "json",//"xml", "html", "script", "json", "jsonp", "text". 12 //在请求之前调用的函数 13 beforeSend:function(){}, 14 //成功返回之后调用的函数 15 success:function(data){ 16 // window.location.href="main"; 17 $(".news_list").html(data.responseContext); 18 $(".paginItem").each(function(){ 19 $(this).removeClass('current'); 20 }); 21 $(".paginItem").eq(page).addClass("current"); 22 $(".blue").eq(1).html(page); 23 24 }, 25 //调用执行后调用的函数 26 complete: function(XMLHttpRequest, textStatus){ 27 28 }, 29 //调用出错执行的函数 30 error: function(){ 31 //请求出错处理 32 } 33 }); 34 }
springmvc Controller部分:
1 package com.zqc.share.manager.ajax; 2 3 import javax.servlet.http.HttpServletRequest; 4 5 import org.springframework.beans.factory.annotation.Autowired; 6 import org.springframework.stereotype.Controller; 7 import org.springframework.web.bind.annotation.RequestMapping; 8 import org.springframework.web.bind.annotation.RequestParam; 9 import org.springframework.web.bind.annotation.ResponseBody; 10 11 import com.zqc.share.manager.qrymodel.NewsListPage; 12 import com.zqc.share.manager.qrymodel.NewsPage; 13 import com.zqc.share.manager.qrymodel.UserListPage; 14 import com.zqc.share.manager.qrymodel.UserPage; 15 import com.zqc.share.manager.service.NewsService; 16 import com.zqc.share.manager.service.UserService; 17 18 19 @Controller 20 public class AjaxController { 21 22 private String path; 23 private String basePath; 24 25 @Autowired 26 NewsService newsService; 27 28 @Autowired 29 UserService userService; 30 31 @ResponseBody 32 @RequestMapping(value = "/ajax_handle") 33 public com.zqc.share.manager.model.ResponseBody ajax_handle(@RequestParam("method") String method,HttpServletRequest request) { 34 path = request.getContextPath(); 35 basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; 36 com.zqc.share.manager.model.ResponseBody responseBody = new com.zqc.share.manager.model.ResponseBody(); 37 String responseContext = new String(); 38 switch(method){ 39 case "getNewsList": 40 int page = Integer.parseInt(request.getParameter("page")); 41 responseContext = getNewsList(page); 42 break; 43 case "getUserList": 44 int page2 = Integer.parseInt(request.getParameter("page")); 45 responseContext = getUserList(page2); 46 break; 47 48 } 49 responseBody.setResponseContext(responseContext); 50 return responseBody; 51 } 52 53 private String getNewsList(int page){ 54 NewsPage newsPage = new NewsPage(); 55 newsPage.setPage(page); 56 newsPage.setSize(3); 57 NewsListPage newsListPage = new NewsListPage(); 58 newsListPage = newsService.getNewsList(newsPage); 59 String html = ""; 60 for(NewsPage newsPage2 : newsListPage.getNewsPageList()) 61 html = html + String.format("<tr>"+ 62 "<td class='imgtd'><img src=\""+basePath+"images/%s\" /></td>"+ 63 "<td><a href='#'>%s</a><p>发布时间:%s</p></td>"+ 64 "<td>%s<p>ID: 82122</p></td>"+ 65 "<td>%s</td>"+ 66 "<td>%s</td>"+ 67 "<td>已审核</td>"+ 68 "<td>%s</td>"+ 69 "</tr>", newsPage2.getHead_image(),newsPage2.getTitle(),newsPage2.getPublishtime(),newsPage2.getDescription(), 70 newsPage2.getTopic().getName(),newsPage2.getUser().getName(),newsPage2.getReadtimes()); 71 72 String responseContext = null; 73 responseContext = html; 74 return responseContext; 75 } 76 }
service层部分:
1 package com.zqc.share.manager.service; 2 3 import org.springframework.stereotype.Service; 4 5 import com.information.config.Config; 6 import com.zqc.share.manager.framework.HttpProxy; 7 import com.zqc.share.manager.model.ResponseBody; 8 import com.zqc.share.manager.qrymodel.NewsListPage; 9 import com.zqc.share.manager.qrymodel.NewsPage; 10 11 @Service 12 public class NewsService { 13 14 public NewsListPage getNewsList(NewsPage newsPage){ 15 String url = "http://localhost:8080/share-controller/getNewsListByPage" + "?p=" +Config.keystr + "|" +Config.token; 16 NewsListPage newsListPage = null; 17 18 String responseBodyString = HttpProxy.post(url, newsPage, "utf-8"); 19 if(responseBodyString == null || responseBodyString.equals(""))return new NewsListPage(); 20 21 ResponseBody responseBody = (ResponseBody) HttpProxy.getObject(responseBodyString); 22 String responseContextString = responseBody.getResponseContext(); 23 newsListPage = (NewsListPage) HttpProxy.getObject(responseContextString, NewsListPage.class); 24 return newsListPage; 25 } 26 27 }
所需的model,以及服务端接口自行替换即可
部分内容请参考:
http://www.cnblogs.com/yzwhykd/p/5868070.html