在Struts中使用displaytag标签的排序/分页数据(一)

2014-11-24 09:56:26 · 作者: · 浏览: 2

显示Struts的标签库是一个开放源码套件的定制标记,提供高层次的网络呈现方式,将工作在一个MVC模型。该库提供了一个重要的功能,同时还易于使用。displaytag标签可以处理列显示,排序,分页,裁剪,分组,出口,智能连接和一个可定制的XHTML样式表中的装饰。

在下面的示例中,我们将看到如何获得收入数据显示标签,并做分页和排序。我们将使用Eclipse作为IDE在我们的例子中。

第1步:创建Eclipse动态Web项目和JAR文件拷贝
启动Eclipse,转到文件 - >新建 - >项目 - >动态Web项目
displaytag标签jar文件列表

第2步:创建行动,表格和Bean类
一旦项目被创建,创建3个java文件ForbesData的,UserAction和UserForm中包net.viralpatel.struts.displaytag。

Struts的displaytag标签的新Java的
复制下面的内容到ForbesData.java文件。

package net.viralpatel.struts.displaytag;

import java.util.ArrayList;

public class ForbesData {
private int rank;
private String name;
private int age;
private double netWorth;

public ForbesData() {

}

public ForbesData(int rank, String name, int age, double netWorth) {
this.rank = rank;
this.name = name;
this.age = age;
this.netWorth = netWorth;
}
public ArrayList loadData() {
ArrayList userList = new ArrayList();
userList.add(new ForbesData(1, "William Gates III", 53, 40.0));
userList.add(new ForbesData(2, "Warren Buffett", 78, 37));
userList.add(new ForbesData(3, "Carlos Slim Helu & family", 69, 35));
userList.add(new ForbesData(4, "Lawrence Ellison", 64, 22.5));
userList.add(new ForbesData(5, "Ingvar Kamprad & family", 83, 22));
userList.add(new ForbesData(6, "Karl Albrecht", 89, 21.5));
userList.add(new ForbesData(7, "Mukesh Ambani", 51, 19.5));
userList.add(new ForbesData(8, "Lakshmi Mittal", 58, 19.3));
userList.add(new ForbesData(9, "Theo Albrecht", 87, 18.8));
userList.add(new ForbesData(10, "Amancio Ortega", 73, 18.3));
userList.add(new ForbesData(11, "Jim Walton", 61, 17.8));
userList.add(new ForbesData(12, "Alice Walton", 59, 17.6));
userList.add(new ForbesData(12, "Christy Walton & family", 54, 17.6));
userList.add(new ForbesData(12, "S Robson Walton", 65, 17.6));
userList.add(new ForbesData(15, "Bernard Arnault", 60, 16.5));
userList.add(new ForbesData(16, "Li Ka-shing", 80, 16.2));
userList.add(new ForbesData(17, "Michael Bloomberg", 67, 16));
userList.add(new ForbesData(18, "Stefan Persson", 61, 14.5));
userList.add(new ForbesData(19, "Charles Koch", 73, 14));
userList.add(new ForbesData(19, "David Koch", 68, 14));
userList.add(new ForbesData(21, "Liliane Bettencourt", 86, 13.4));
userList.add(new ForbesData(22, "Prince Alwaleed Bin Talal Alsaud", 54, 13.3));
return userList;
}
public int getRank() {
return rank;
}
public void setRank(int rank) {
this.rank = rank;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public double getNetWorth() {
return netWorth;
}
public void setNetWorth(double netWorth) {
this.netWorth = netWorth;
}
}
复制以下内容UserForm.java上

package net.viralpatel.struts.displaytag;

import java.util.ArrayList;

public class UserForm extends org.apache.struts.action.ActionForm {

private ArrayList forbesList;

public ArrayList getForbesList() {
return forbesList;
}

public void setForbesList(ArrayList forbesList) {
this.forbesList = forbesList;
}
}
复制以下内容UserAction.java上

package net.viralpatel.struts.displaytag;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import