maven配置 pagehelper分页管理

pom文件配置仓库


	
	    com.github.pagehelper
	    pagehelper
	    5.0.0
	

mybatis-config.xml


	
	
		
			
		
		
		
	
	
	

Controller

PaheHelper.startPage设置第几页,每页多少条
pageinfo,将信息插入page封装好的实体类中,里面有分页相关的数据
避坑:startpage分页需要放在分装list的语句前面,这样才能实现封装功能

@ResponseBody
	@RequestMapping("personSelect")
	public Msg personSelect(@RequestParam(value="pn",defaultValue="1")Integer pn){
		
		PageHelper.startPage(pn,5);
		
		List list = personService.personSelect();
		
		PageInfo pageInfo = new PageInfo(list);
		
		if(list.size() != 0){
			return Msg.success().add("pageInfo", pageInfo);
		}else{
			return Msg.error();
		}
	}

前台页面

html

js

//定义全局的总页数
	var total_page;

	$(function() {
		to_page(1);
	})
	
	function to_page(pn) {
		$.ajax({
			url:"personSelect",
			
			data:"pn="+pn,
			type:"post",
			success:function(data){
				//解析并西那是员工数据
				build_person_table(data);
				//解析并显示分页信息
				build_person_info(data);
				//解析并显示分页条信息
				build_person_nav(data);
				
			},
			error:function(data){
				alert("ajax error");
			}
		
		});
	}

//解析显示员工数据
	function build_person_table(data){
		
		$("#person_table").empty();
		
		var list = data.map.pageInfo.list;
		$("ID姓名密码操作").appendTo("#person_table");;
		$.each(list,function(index,person){
			var id = $("").append(person.id);
			var name = $("").append(person.name);
			var password = $("").append(person.password);
			var editBtn = $("").addClass("btn btn-primary btn-sm").append($("").addClass("glyphicon glyphicon-pencil")).append("编辑");
			var deleteBtn = $("").addClass("btn btn-danger btn-sm").append($("").addClass("glyphicon glyphicon-trash")).append("删除");
			
			//为编辑按钮添加一个自定义属性,并加入当前id
			editBtn.attr("edit_id",person.id);
			
			$("").append(id).append(name).append(password).append(editBtn).append(deleteBtn).appendTo("#person_table ");
			
			
			
			//删除点击事件
			deleteBtn.click(function(){
				to_delete(person.id,data.map.pageInfo.pageNum);
			});
			
			
			
			editBtn.click(function(){
				
				select_person_by_id($(this).attr("edit_id"));
				
				//JQ调用模态框
				/* $("#myModal").modal({
					backdrop:"static"
				}); */
			});
			
			
		});
	}
//解析并显示分页信息
	function build_person_info(data) {
		//清空page_info
		$("#page_info").empty();
		
		$("#page_info").append("当前第"+data.map.pageInfo.pageNum+"页,一共"+data.map.pageInfo.pages+"页,一共有"+data.map.pageInfo.total+"条数据");
	
		total_page = data.map.pageInfo.total+10;
	}
	
	//解析并显示分页条信息
	function build_person_nav(data) {
		//清空page_nav
		$("#page_nav").empty();
		
		//nav
		var nav = $("");
		//ul
		var ul = $("
    ").addClass("pagination"); //首页 var firstPageLi = $("
  • ").append($("").append("首页").attr("href","#")); //上一页 var prePageLi = $("
  • ").append($("").append("«").attr("href","#")); //禁用首页,上一页 if(data.map.pageInfo.hasPreviousPage==false){ firstPageLi.addClass("disabled"); prePageLi.addClass("disabled"); }else{ //首页点击事件 firstPageLi.click(function(){ to_page(1); }); //上一页点击事件 prePageLi.click(function(){ to_page(data.map.pageInfo.pageNum-1); }); } //添加元素 ul.append(firstPageLi); ul.append(prePageLi); //----------------------------------- //数字页 $.each(data.map.pageInfo.navigatepageNums,function(index,item){ var numLi = $("
  • ").append($("").append(item).attr("href","#")); if(data.map.pageInfo.pageNum == item){ numLi.addClass("active"); } //数字按钮点击事件 numLi.click(function(){ to_page(item); }); //添加元素 ul.append(numLi); }); //----------------------------------- //下一页 var nextPageLi = $("
  • ").append($("").append("»").attr("href","#")); //末页 var lastPageLi = $("
  • ").append($("").append("末页").attr("href","#")); //禁用下一页,末页 if(data.map.pageInfo.hasNextPage==false){ nextPageLi.addClass("disabled"); lastPageLi.addClass("disabled"); }else{ //下一页按钮点击事件 nextPageLi.click(function(){ to_page(data.map.pageInfo.pageNum+1); }); //末页点击事件 lastPageLi.click(function(){ to_page(data.map.pageInfo.pages); }); } //添加元素 ul.append(nextPageLi); ul.append(lastPageLi); nav.append(ul).appendTo("#page_nav"); }

    你可能感兴趣的:(mybatis,javaweb,工具)