Maison  >  Article  >  Java  >  Comment écrire une pagination en Java

Comment écrire une pagination en Java

尚
original
2019-12-13 15:45:242870parcourir

Comment écrire une pagination en Java

Le principe de mise en œuvre est très simple, c'est-à-dire créer une classe Page, qui contient le nombre de pages actuellement visitées (ce sont les données transmises du navigateur client vers l'arrière-plan, donc vous devez l'utiliser pour la pagination afin de localiser les entrées d'enregistrement) et le nombre de lignes d'enregistrement affichées sur chaque page.

Ensuite, les données suivantes peuvent être obtenues grâce au calcul de pagination. (Supposons que votre numéro de page commence à 1)

Recommandé : Tutoriel de base Java

Nombre total de pages = nombre total d'enregistrements/taille de chacun. page, Si 0 ! = nombre total d'enregistrements% par taille de page, alors le nombre total de pages + 1

2. Numéro de page actuel (obtenu à partir des paramètres transmis par le navigateur)

. 3. Enregistrements de table Position de départ = (numéro de page actuel - 1) * taille de chaque page

4. Nombre total d'enregistrements (sélectionnez le nombre (*) dans [nom de la table] [où [condition]], obtenus à partir de la requête de la base de données)

5. La taille de chaque page peut être fixée ou transmise depuis la page. Avec ces paramètres, utilisez simplement l'instruction SQL pour trouver l'enregistrement correspondant.

public class Page {
 
    private long totalCount = 0;// 总记录数
    private int pageNumber = 1;//  当前页号,默认显示第一页
    private int pageSize = 20; // 每页大小,默认每页20条
    private int totalPage = 0;// 总页数,默认为0
    private int startRow = 0;// 起始记录行号,默认为从表头开始
 
    /**
    * 分页计算方法,由setTotalCount调用
    */
    public void pagination() {
// 计算总页数
        if (this.totalCount % pageSize == 0)
            this.totalPage = new Long(this.totalCount / pageSize).intValue();
        else
            this.totalPage = new Long(this.totalCount / pageSize).intValue() + 1;
// 排除错误页号
        if (this.pageNumber < 1)
            this.pageNumber = 1;
        if (this.pageNumber > this.totalPage)
            this.pageNumber = this.totalPage;
// 计算起始行号
        this.startRow = (this.pageNumber - 1) * this.pageSize;
    }
 
    public long getTotalCount() {
        return totalCount;
    }
 
    public void setTotalCount(long totalCount) {
        this.totalCount = totalCount;
        this.pagination();
    }
 
    public int getPageNumber() {
        return pageNumber;
    }
 
    public void setPageNumber(int pageNumber) {
        this.pageNumber = pageNumber;
    }
 
    public int getPageSize() {
        return pageSize;
    }
 
    public void setPageSize(int pageSize) {
        this.pageSize = pageSize;
    }
 
    public int getTotalPage() {
        return totalPage;
    }
 
    public void setTotalPage(int totalPage) {
        this.totalPage = totalPage;
    }
 
    public int getStartRow() {
        return startRow;
    }
 
    public void setStartRow(int startRow) {
        this.startRow = startRow;
    }
 
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn