hotlisttag.java
来自「一个免费wap站」· Java 代码 · 共 96 行
JAVA
96 行
package com.eline.wap.catalog.taglib.wml;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Random;
import com.eline.wap.catalog.client.HotlinkHelper;
import com.eline.wap.catalog.model.Hotlink;
import com.eline.wap.common.taglib.ListTag;
public class HotListTag extends ListTag {
/**
*
*/
private static final long serialVersionUID = 275456222253915831L;
private String prefix;
private boolean hasNext = false;
private int pageItems; // 页面大小
// private int pageNum = 0; // 页号
private int productId = -1;
private String align = "bottom";
public HotListTag() {
prefix = "HotListWML_";
}
protected boolean needsNextForm() {
return hasNext;
}
protected void initParamPrefix() {
super.paramPrefix = this.prefix;
}
protected Collection findCollection() throws Exception {
System.out.println("HotListTag.findCollection()");
ArrayList list = null;
ArrayList collResult = new ArrayList();
HotlinkHelper helper = new HotlinkHelper();
int align = this.align.equalsIgnoreCase("bottom") ? Hotlink.ALIGN_BOTTOM : Hotlink.ALIGN_TOP;
list = helper.getHotlinks(productId, align, true);
System.out.println("list.size()=" + list.size());
System.out.println("pageItems=" + pageItems);
System.out.println("align=" + align);
hasNext = false;
// 随机抽取待返回的数据
if (list.size() < pageItems)
collResult = list;
else {
Random ro = new Random();
int[] array = new int[pageItems];
int range = list.size(); // set range
for (int i = 0, idx = 0; idx < pageItems && i < 100; i ++) {
boolean duplicated = false;
int result = ro.nextInt(range);
for (int j = 0; j < idx; j ++) {
if (result == array[j]) {
duplicated = true;
break;
}
}
if (duplicated == false)
array[idx ++] = result;
}
for (int k = 0; k < array.length; k ++)
collResult.add((list.get(array[k])));
}
totalRecords = collResult.size(); // 共有多少条记录
totalPages = 1; // 共有多少页
return collResult;
}
public void setPageItems(int pageItems) {
this.pageItems = pageItems;
super.pageSize = this.pageItems;
}
public void setAlign(String align) {
this.align = align;
}
public void setProductId(int productId) {
this.productId = productId;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?