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

📄 movielisttag.java

📁 一个用struts tiles的在线影院web系统
💻 JAVA
字号:
package com.eline.vod.taglib;

import java.util.Collection;

import javax.servlet.http.HttpServletRequest;

import com.blue.web.common.model.Page;
import com.eline.common.taglib.ListTag;
import com.eline.vod.client.Movies;
import com.eline.vod.model.MovieCondition;

public class MovieListTag extends ListTag{
	/**
	 * 
	 */
	private static final long serialVersionUID = 6583265327701487337L;
	private String prefix;
	private boolean hasNext = false;
	
	private int pageItems;			// 页面大小
	private int pageNum		= 0;	// 页号
	private int sortBy	= 0;
	private boolean isApprovedOnly = false;



	
	public MovieListTag() {
		prefix = "MovieList_";
	}

	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;

		// 根据页面中查询条件形成查询值对象
		MovieCondition condition = fillQueryCondition();
		condition.setSortBy(sortBy);
		condition.setApprovedOnly(isApprovedOnly);
		
		// 查询结果
		Movies mh = new Movies();
		int start = pageIndex * pageSize;
		page = mh.searchMovie(condition, start, pageSize);
		coll = page.getItems();

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

	private MovieCondition fillQueryCondition() {
		MovieCondition condition = new MovieCondition();
		boolean hasCondition = false;
		
		if (sortBy >= 0) {
			condition.setSortBy(sortBy);
			hasCondition = true;
		}
		
		if (isApprovedOnly == false) {
			condition.setApprovedOnly(false);
			hasCondition = true;
		}
	
		return hasCondition ? condition : null;
	}

	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 setSortBy(int sortBy) {
		this.sortBy = sortBy;
	}
	public void setApprovedOnly(boolean isApprovedOnly) {
        this.isApprovedOnly = isApprovedOnly;
    }
}

⌨️ 快捷键说明

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