Maison  >  Questions et réponses  >  le corps du texte

java - 怎么清除一个方法里面缓存的数据?

调用此方法:
int pageNo=ps.getFenyePageNo(param,lastPage);

具体方法:
private int currentPageNo=1;

public int getFenyePageNo(String param, int lastPage) {
    if ("first".equals(param) || null == param) {
        currentPageNo = 1;
    }
    else if ("next".equals(param)) {
        if (currentPageNo < lastPage) {
            System.out.println("当前页3::"+currentPageNo);
            currentPageNo++;    
        }
    } 
    else if ("previous".equals(param)) {
        if (currentPageNo > 1) {
            currentPageNo--;
        }
    }
    else if ("last".equals(param)) {
        currentPageNo = lastPage;
    }
    return currentPageNo;
}

现在的问题就是::调用一次方法,数据就保存在currentPageNo里面了,需要不停的调用这个方法。
有没有什么办法,能每次调用完这个方法之后,就能清除这个方法里面的数据!!!

清除数据是我想要的结果,,哪位大神有什么好办法吗?????

PHPzPHPz2717 Il y a quelques jours555

répondre à tous(5)je répondrai

  • 高洛峰

    高洛峰2017-04-18 09:47:41

    est mal défini. Le front-end ne transmet que 第几页 et 每页size Ensuite, le back-end calcule limit,offset, trouve les données et les renvoie au front-end.

    La demande et le retour sont les suivants :

    前端请求(仅分页相关数据):
        private int pageNo = 1;
        /** 每页条数 */
        private int pageSize = 10;
    后端返回(仅分页相关数据):
        /** 第几页 */
        private int pageNo = 1;
        /** 每页条数 */
        private int pageSize = 10;
        /** 总页数 */
        private int pageCount;
        /** 总记录数 */
        private int recordCount;

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:47:41

    Défini comme une variable locale renvoie

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-18 09:47:41

    Pour des problèmes tels que la pagination, il est préférable d'avoir une classe de base commune dans le projet. Les classes communes standardisent les fonctionnalités communes de la pagination. Parce que toutes les requêtes de page de liste doivent utiliser la pagination. Le code recommandé est le suivant :

    import java.util.Date;
    //类QueryBaseDo.java的实现描述:分页查询对象的基类
    public class QueryBaseDo {
        /** 查询结果总记录数 */
        private Integer         totalCount;
        // 默认一页10条数据
        public static final int DEFAULT_PAGE_SIZE = 10;
        // 默认从第一页开始
        public static final int DEFAULT_PAGE_NO   = 1;
        // 页面大小
        private int             pageSize          = DEFAULT_PAGE_SIZE;
        // 第几页
        private int             pageNum           = DEFAULT_PAGE_NO;
        // 这个值一般由服务端设置
        private int             total             = Integer.MAX_VALUE;
        // 是否要获取总页数,如果用户点分页查询第2页到第N页可以不用查询记录总数
        private boolean         needPageTotal     = true;
    
        /**
         * 是否进行分页
         */
        private boolean         doPage            = true;
    
        private String          creator;
    
        private Date            gmtCreate;
    
        private String          modifier;
    
        private Date            gmtModified;
    
        private String          isDeleted         = "n";
    
        private Integer         skip              = 0;
        private Integer         take              = 10;
    
        public Integer getSkip() {
            return skip;
        }
    
        public void setSkip(Integer skip) {
            this.skip = skip;
        }
    
        public Integer getTake() {
            return take;
        }
    
        public void setTake(Integer take) {
            this.take = take;
        }
    
        public Integer getTotalCount() {
            return totalCount;
        }
    
        public void setTotalCount(Integer totalCount) {
            this.totalCount = totalCount;
        }
    
        public int getPageSize() {
            if (pageSize <= 0) {
                pageSize = DEFAULT_PAGE_SIZE;
            }
            return pageSize;
        }
    
        public void setPageSize(int pageSize) {
            if (pageSize < 0) {
                pageSize = DEFAULT_PAGE_SIZE;
            }
            this.pageSize = pageSize;
        }
    
        public int getPageNum() {
            // total已经被赋值,修正pagenum 的值
            if (Integer.MAX_VALUE != total && total > 0) {
                pageNum = Math.min(pageNum, (int) Math.ceil((double) total / pageSize));
            }
    
            if (pageNum <= 0) {
                pageNum = DEFAULT_PAGE_NO;
            }
            return pageNum;
        }
    
        public void setPageNum(int pageNum) {
            if (pageNum <= 0) {
                pageNum = DEFAULT_PAGE_NO;
            }
            this.pageNum = pageNum;
        }
    
        public int getStartNum() {
            int startNum = getPageSize() * (getPageNum() - 1);
            if (startNum < 0) {
                startNum = 0;
            }
            return startNum;
        }
    
        public int getTotal() {
            return total;
        }
    
        public void setTotal(int total) {
            this.total = total;
        }
    
        public boolean isNeedPageTotal() {
            return needPageTotal;
        }
    
        public void setNeedPageTotal(boolean needPageTotal) {
            this.needPageTotal = needPageTotal;
        }
    
        public boolean isDoPage() {
            return doPage;
        }
    
        public void setDoPage(boolean doPage) {
            this.doPage = doPage;
        }
    
        public String getCreator() {
            return creator;
        }
    
        public void setCreator(String creator) {
            this.creator = creator;
        }
    
        public Date getGmtCreate() {
            return gmtCreate;
        }
    
        public void setGmtCreate(Date gmtCreate) {
            this.gmtCreate = gmtCreate;
        }
    
        public String getModifier() {
            return modifier;
        }
    
        public void setModifier(String modifier) {
            this.modifier = modifier;
        }
    
        public Date getGmtModified() {
            return gmtModified;
        }
    
        public void setGmtModified(Date gmtModified) {
            this.gmtModified = gmtModified;
        }
    
        public String getIsDeleted() {
            return isDeleted;
        }
    
        public void setIsDeleted(String isDeleted) {
            this.isDeleted = isDeleted;
        }
    
        public static int getDefaultPageSize() {
            return DEFAULT_PAGE_SIZE;
        }
    
        public static int getDefaultPageNo() {
            return DEFAULT_PAGE_NO;
        }
    
    }
    

    répondre
    0
  • 巴扎黑

    巴扎黑2017-04-18 09:47:41

    La page a un champ caché, qui est utilisé pour stocker le currentPageNo de la page actuelle. Lors du passage à la page, le currentPageNo est soumis au serveur et une valeur lui est attribuée.
    Peu importe que le currentPageNo sur le serveur soit local ou non. Il est réattribué à chaque fois. Si aucune valeur n'est soumise, la valeur 1 lui sera attribuée

    .

    Vos actions héritent toutes d'une baseAction. Cette baseAction implémente l'interface Ipage, qui implémente la page, y compris le nombre total de pages, le numéro de page et la taille de chaque page. . .

    répondre
    0
  • 怪我咯

    怪我咯2017-04-18 09:47:41

    Les variables locales sont effectuées

    répondre
    0
  • Annulerrépondre