本文介绍了javaweb如何实现分页查询。 javaweb实现分页查询的代码有一定的参考价值,有需要的朋友可以参考。 我希望对你有帮助。
Java网页分页技术的实现
寻呼技术是指通过SQL语句(以下简称)获取数据,具体实现查看以下代码//寻呼查询语句
select * from表名where limit page,count;
和
//获取表中的总数据,决定页数
选择计数(* ) from表名;
不说废话直接上代码
前端代码:
title city _ id city _ en city _ cn country _ code country _ en country _ cn province _ en province _ cn
第1页/
共1页/
家庭/
预视听/
下一步/
转到下一页:
页面
Go
$ (功能() ) )。
//页面初始化(显示第一页) ) ) ) )。
选择页面(1;
主页(;
prev (;
next (;
goPage (;
() )
functionselectpage (页面代码) {
//分页查询页面代码:页数
$.Ajax('getcity ),{
类型: ' get ',
数据: { ' curren page ' : page code },
success :功能(data ) {
$('#tbody ' ).html (' );
//总页数
$('#countPage ' ).text(data.totalpage );
$.each(data.pagedata,function ) index,obj ) )。
var clazz=' ';
if (索引%2==0) {
clazz='success ';
}
$('#tbody ' ).append (
'
n ' '
' obj.cityId 'n ' '
' obj.cityEn 'n ' '
' obj.cityCn 'n ' '
' obj.countryCode 'n ' '
' obj.countryEn 'n ' '
' obj.countryCn 'n ' '
' obj.provinceEn 'n ' '
' obj.provinceCn 'n ' '
();
() )
}
);
}
//第1页
功能主页() }
$('#homePage ' ).on('click ',function ) )。
$('#paging ' ).text(1;
选择页面(1;
() )
}
//上一页
功能预览(
$('#prevPage ' ).on('click ',function ) }
varprevtext=$('#paging ' ).text );
varprevnum=parseint(prevtext );
prevNum=prevNum-1;
if(prevnum=1) {
选择页面(1;
$('#paging ' ).text(1;
返回;
}
$('#paging ' ).text(prevnum );
选择页面(prev num;
() )
}
//下一页
功能下一步(
$('#nextPage ' ).on('click ',function ) )。
//获取文本的值页数
varprevtext=$('#paging ' ).text );
//类型转换
varprevnum=parseint(prevtext );
//总页数
varcounttext=$('#countpage ' ).text );
//类型转换
varcountnum=parseint(counttext );
//页数加1
prevNum=prevNum 1;
/p>//判断超出了总页码
if(prevNum>=countNum){
selectPage(countNum);
$("#paging").text(countNum);
return;
}
//设置网页增加的值
$("#paging").text(prevNum);
//调用分页查询
selectPage(prevNum);
})
}
//去到几页
function goPage() {
$("#goPage").on("click",function () {
var pageNum=parseInt($("#pageNum").val());
var countPage=parseInt($("#countPage").text())
//判断超出了总页码
if(pageNum>=countPage){
selectPage(countPage);
$("#paging").text(countPage);
$("#pageNum").val(countPage);
return;
}
//判断低于了总页码
if(pageNum<=1){
selectPage(1);
$("#paging").text(1);
$("#pageNum").val(1);
return;
}
selectPage(pageNum);
$("#paging").text(pageNum);
})
}
后台servlet代码:/**
* @author hh
* @Date 2018/9/12
*/
@WebServlet("/getCity")
public class PageServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//获取当前页参数,第一次访问为空
String currPage = req.getParameter("currenPage");
// 判断,如果为空,则设置为1
if (currPage == null || "".equals(currPage.trim())) {
currPage = "1";
}
//调用service返回分页类实例
PageBean pageBean=new PageService().getPage(currPage);
//设置相应文本类型
resp.setContentType("application/json;charset=utf-8");
//响应前端
resp.getWriter().print(new Gson().toJson(pageBean));
}
}
City 实体类:package edu.nf.demo.entity;
/**
* @author hh
* @Date 2018/9/12
*/
public class City {
private String cityId;
private String cityEn;
private String cityCn;
private String countryCode;
private String countryEn;
private String countryCn;
private String provinceEn;
private String provinceCn;
public String getCityId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
public String getCityEn() {
return cityEn;
}
public void setCityEn(String cityEn) {
this.cityEn = cityEn;
}
public String getCityCn() {
return cityCn;
}
public void setCityCn(String cityCn) {
this.cityCn = cityCn;
}
public String getCountryCode() {
return countryCode;
}
public void setCountryCode(String countryCode) {
this.countryCode = countryCode;
}
public String getCountryEn() {
return countryEn;
}
public void setCountryEn(String countryEn) {
this.countryEn = countryEn;
}
public String getCountryCn() {
return countryCn;
}
public void setCountryCn(String countryCn) {
this.countryCn = countryCn;
}
public String getProvinceEn() {
return provinceEn;
}
public void setProvinceEn(String provinceEn) {
this.provinceEn = provinceEn;
}
public String getProvinceCn() {
return provinceCn;
}
public void setProvinceCn(String provinceCn) {
this.provinceCn = provinceCn;
}
}
自己写的一个类,专门用于分页查询用的:package edu.nf.demo.entity;
import java.util.List;
/**
* @author hh
* @Date 2018/9/12
*/
public class PageBean {
/**
* 当前页, 默认显示第一页
*/
private Integer currntPage = 1;
/**
* 查询返回的行数(每页显示的行数),默认每页显示10行
*/
private int pageCount = 10;
/**
* 总记录数
*/
private int totalCount;
/**
* 总页数 = 总记录数/每页显示的行数(+1)
*/
private int totalPage;
/**
* 分页查询的数据,运用泛型,可以重复利用
*/
private List pageData;
public int getTotalPage() {
if (totalCount % pageCount == 0) {
totalPage = totalCount / pageCount;
} else {
totalPage = totalCount / pageCount + 1;
}
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getCurrntPage() {
return currntPage;
}
public void setCurrntPage(int currntPage) {
this.currntPage = currntPage;
}
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
}
public List getPageData() {
return pageData;
}
public void setPageData(List pageData) {
this.pageData = pageData;
}
}
后台service,逻辑业务层:/**
* @author hh
* @Date 2018/9/12
*/
public class PageService {
public PageBean getPage(String currPage){
//类型转换 当前页数
Integer currenPage = Integer.valueOf(currPage);
//实例化分页类
PageBean pageBean = new PageBean();
//实例化CityDaoImpl类
CityDaoImpl cityDao=new CityDaoImpl();
//数据库第几行开始查询
int startPage=(currenPage-1)*pageBean.getPageCount();
//查询多少行数据 分页类里默认30行
int selectCount=pageBean.getPageCount();
//查询数据库获取分页返回的数据 : select * from regional_info limit startPage,selectCount
List list=cityDao.listCity(startPage,selectCount);
//获取总数
int cityCount=cityDao.getCityCount();
//设置查询的数据
pageBean.setPageData(list);
//共多少行
pageBean.setTotalCount(cityCount);
//设置总页数
pageBean.setTotalPage(cityCount/pageBean.getPageCount()+1);
return pageBean;
}
}