分页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
分页ajax+springmvc的简单实现的更多相关文章
- jq分页插件,支持动态,静态分页的插件,简单易用。
工作中经常要用到分页功能.为了方便封装了一个比较通用的分页插件开源出来了,简单易用. 官网:https://cwlch.github.io/Ch_Paging 下载地址:https://github. ...
- PHP分页初探 一个最简单的PHP分页代码的简单实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...
- SpringMVC之简单的增删改查示例(SSM整合)
本篇文章主要介绍了SpringMVC之简单的增删改查示例(SSM整合),这个例子是基于SpringMVC+Spring+Mybatis实现的.有兴趣的可以了解一下. 虽然已经在做关于SpringMVC ...
- spring+springMVC+mybatis简单整合
spring+springMVC+mybatis简单整合, springMVC框架是spring的子项目,所以框架的整合方式为,spring+Mybatis或springMVC+mybatis. 三大 ...
- springmvc springJDBC 简单实训银行账户管理系统
springmvc springJDBC 简单实训银行账户管理系统 1.简单介绍一下,在校时每周结束都会有一次学习总结,简称“实训”,这次实训内容是spring,因为是最近热门框架,我就先从基础方面开 ...
- phpcms列表分页ajax加载更多
1.在phpcms\modules\content\index.php文件中添加以下函数: /*列表分页ajax加载更多*/ public function homeajaxlist() { if( ...
- Maven+SpringMVC+Dubbo 简单的入门demo配置
转载自:https://cloud.tencent.com/developer/article/1010636 之前一直听说dubbo,是一个很厉害的分布式服务框架,而且巴巴将其开源,这对于咱们广大程 ...
- PHP+jQuery 列表分页类 ( 支持 url 分页 / ajax 分页 )
/* ******* 环境:Apache2.2.8 ( 2.2.17 ) + PHP5.2.6 ( 5.3.3 ) + MySQL5.0.51b ( 5.5.8 ) + jQuery-1.8.3.mi ...
- [js高手之路]Node.js+jade+mongoose实战todolist(分页,ajax编辑,删除)
该系列文章索引: [js高手之路]node js系列课程-创建简易web服务器与文件读写 [js高手之路]node js系列课程-图解express+supervisor+ejs用法 [js高手之路] ...
随机推荐
- PHP intval()
定义和用法 获取变量的整数值,允许以使用特定的进制返回.默认10进制 注:如果参数为整数,则不做任何处理. 语法 intval (var, base) 参数 描述 var 必须.可以是任何标量类型. ...
- UDS(ISO14229-2006) 汉译(No.7 应用层协议)【未完,待续】
7.1定义 应用层协议通常作为确认消息的传输,意味着从客户端发送的每一个请求都将有由服务器端产生的与之相对的响应. 唯一的例外在于:例如使用了功能寻址方式,或者该请求/指示没有指定生成响应/确定的少数 ...
- 【JAVA并发编程实战】9、锁分段
package cn.study.concurrency.ch11; /** * 锁分段 * @author xiaof * */ public class StripedMap { //同步策略:就 ...
- Linux下Redis的安装与配置
redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了 memcached的不足,它支持存储的value类型相对更多,包括stri ...
- RequireJS+JQueryMobile
RequireJS提供了JS下模块化开发的充分条件.之前我自己也在多个项目中尝试模块化开发,但是由于没有类似RequireJS这样的框架,最后的效果都不是很理想. 在RequireJS中,所有的JS都 ...
- 基于highcharts封装的组件-demo&源码
前段时间做的项目中需要用到highcharts绘制各种图表,其实绘制图表本身代码很简单,但是由于需求很多,有大量的图形需要绘制,所以就不得不复制粘贴大量重复(默认配置等等)的代码,所以,后来抽空自己基 ...
- iOS多线程之2.NSThread的加锁@synchronized
我在上一篇文章讲了线程的生命周期,这篇文章来讲讲线程加锁的注意事项与@synchronized关键字. 那什么时候需要加锁呢,就是当多条线程同时操作一个变量时,就需要加锁了.至于为什么要加锁,可以 ...
- Linux0.11内核--系统调用机制分析
[版权所有,转载请注明出处.出处:http://www.cnblogs.com/joey-hua/p/5570691.html ] Linux内核从启动到初始化也看了好些个源码文件了,这次看到kern ...
- React Native知识8-WebView组件
创建一个原生的WebView,可以用于访问一个网页.可以加载一个URL也可以加载一段html代码: 一:属性 1:iosallowsInlineMediaPlayback bool 指定HTML5视频 ...
- Java暗箱操作之for-each
对于我们常用的ArrayList等容器类,经常需要一个一个遍历里面的元素,从而对各个元素执行对应的操作. 像我代码写多了,通常的做法是用传统的,类似于数组遍历的方法,即在for循环中设置一个int变量 ...