⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ringlisttag.java

📁 一个免费wap站
💻 JAVA
字号:
package com.eline.wap.resource.taglib;

import java.util.Collection;

import javax.servlet.http.HttpServletRequest;

import com.eline.wap.common.model.Page;
import com.eline.wap.common.taglib.ListTag;
import com.eline.wap.resource.client.RingHelper;
import com.eline.wap.resource.model.RingCondition;

public class RingListTag extends ListTag{
	/**
	 * 
	 */
	private static final long serialVersionUID = 6583265327701487337L;
	private String prefix;
	private boolean hasNext = false;
	
	private int pageItems;			// 页面大小
	private int pageNum		= 0;	// 页号
	private int parentId	= -1;
	private boolean isActiveOnly	= false;

	
	public RingListTag() {
		prefix = "RingList_";
	}

	protected boolean needsNextForm() {
		return hasNext;
	}

	protected void initParamPrefix() {
		super.paramPrefix = this.prefix;
	}

	protected Collection findCollection() throws Exception {
		Collection coll = null;
		Page page = null;
		
		HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();
		
		// 保证每次调用该列表页面时总显示第一页
		if(request.getParameter(prefix + "pageIndex") == null || request.getParameter(prefix + "pageIndex").equals("")
				|| request.getParameter(prefix + "pageIndex").equalsIgnoreCase("null"))
			pageIndex = 0;

		// 根据页面中查询条件形成查询值对象
		RingCondition condition = fillQueryCondition();
		
		// 查询结果
		RingHelper rh = new RingHelper();
		int start = pageIndex * pageSize;
		page = rh.searchRing(condition, start, pageSize);
		coll = page.getItems();

		// 为基类相应属性赋值,写共几条记录,共几页第几页用
		totalRecords = page.getTotalRecords();	// 共有多少条记录
		totalPages = (totalRecords + pageSize - 1) / pageSize;	// 共有多少页
		
		// 是否有下页
		hasNext = ((pageIndex + 1) < totalRecords) ? true : false;

		return coll;
	}

	private RingCondition fillQueryCondition() {
		RingCondition condition = new RingCondition();
		boolean hasCondition = false;
		
		if (parentId >= 0) {
			condition.setParentId(parentId);
			hasCondition = true;
		}
		if (isActiveOnly == false) {
			condition.setActiveOnly(false);
			hasCondition = true;
		}
		
		return hasCondition ? condition : null;
	}

	public void setActiveOnly(boolean isActiveOnly) {
		this.isActiveOnly = isActiveOnly;
	}

	public void setPageItems(int pageItems) {
		this.pageItems = pageItems;
		super.pageSize = this.pageItems;
	}

	public void setPageNum(int pageNum) {
		this.pageNum = pageNum;
		super.pageIndex = this.pageNum;
	}

	public void setParentId(int parentId) {
		this.parentId = parentId;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -