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

📄 categorylisttag.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.CategoryHelper;
import com.eline.wap.resource.model.CategoryCondition;

public class CategoryListTag extends ListTag {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8289710598646414274L;

	private String prefix;
	private boolean hasNext = false;
	
	private int pageItems;			// 页面大小
	private int pageNum		= 0;	// 页号
	private int parentId	= -1;
	private int type		= -1;
	private boolean isActiveOnly	= false;

	
	public CategoryListTag() {
		prefix = "CategoryList_";
	}

	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;

		// 根据页面中查询条件形成查询值对象
		CategoryCondition condition = fillQueryCondition();

		// 查询结果
		CategoryHelper ch = new CategoryHelper();
		int start = pageIndex * pageSize;
		page = ch.searchCategories(condition, start, pageSize);
		coll = page.getItems();
		
		// 为基类相应属性赋值,写共几条记录,共几页第几页用
		totalRecords = page.getTotalRecords();	// 共有多少条记录
		totalPages = (totalRecords + pageSize - 1) / pageSize;	// 共有多少页
		
		// 是否有下页
		hasNext = ((pageIndex + 1) < totalRecords) ? true : false;

		return coll;
	}

	private CategoryCondition fillQueryCondition() {
		CategoryCondition condition = new CategoryCondition();
		boolean hasCondition = false;
		
		if (parentId >= 0) {
			condition.setParentId(parentId);
			hasCondition = true;
		}
		if (isActiveOnly == false) {
			condition.setActiveOnly(false);
			hasCondition = true;
		}
		if (this.type != -1) {
			condition.setType(type);
			hasCondition = true;
		}
		
		return hasCondition ? condition : null;
	}

	public void setPageItems(int pageItems) {
		this.pageItems = pageItems;//StringUtils.getInt(pageItems, 10);
		super.pageSize = this.pageItems;
	}

	public void setPageNum(int pageNum) {
		this.pageNum = pageNum;//StringUtils.getInt(pageNum, 0);
		super.pageIndex = this.pageNum;
	}

	public void setParentId(int parentId) {
		this.parentId = parentId;//StringUtils.getInt(parentId, 0);
	}

	public void setType(int type) {
		this.type = type;//StringUtils.getInt(type, -1);
	}

	public void setActiveOnly(boolean isActiveOnly) {
		this.isActiveOnly = isActiveOnly;//StringUtils.getBoolean(isActiveOnly, true);
	}

	
}

⌨️ 快捷键说明

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