import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.validator.GenericValidator;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class TestAction extends ActionSupport
{
/**
* 注释内容
*/
private static final long serialVersionUID = -8648961157882604306L;
private ArrayList<UserInfo> userList;
private int count;
public String execute()
throws Exception
{
HttpServletRequest request = ServletActionContext.getRequest();
String pageIndexName =
new org.displaytag.util.ParamEncoder("element").encodeParameterName(org.displaytag.tags.TableTagParameters.PARAMETER_PAGE); // 页数的参数名
int pageSize = 10; //每页显示的条数
int pageIndex =
GenericValidator.isBlankOrNull(request.getParameter(pageIndexName)) ? 0
: (Integer.parseInt(request.getParameter(pageIndexName)) - 1); //当前页数
count = 50;
userList = getList(pageIndex, pageSize);
return SUCCESS;
}
/**
* <一句话功能简述>
* <功能详细描述>
* @param begin
* @param pageSize
* @return
* @see [类、类#方法、类#成员]
*/
public ArrayList<UserInfo> getList(int begin, int pageSize)
{
ArrayList<UserInfo> list = new ArrayList<UserInfo>();
UserInfo userInfo = null;
begin = begin * pageSize;
pageSize = (begin + 1) * pageSize;
for (int i = begin; i <= pageSize; i++)
{
userInfo = new UserInfo();
userInfo.setId("id" + i);
userInfo.setName("name" + i);
userInfo.setPass("pass" + i);
userInfo.setHref("href" + i);
list.add(userInfo);
}
return list;
}
public int getCount()
{
return count;
}
public void setCount(int count)
{
this.count = count;
}
public ArrayList<UserInfo> getUserList()
{
return userList;
}
public void setUserList(ArrayList<UserInfo> userList)
{
this.userList = userList;
}
}
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://displaytag.sf.net" prefix="display"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="css/screen.css" />
<link rel="stylesheet" type="text/css" href="css/maven-theme.css" />
<link rel="stylesheet" type="text/css" href="css/css.css" />
</head>
<body>
<div align="center">
<display:table name="userList" cellspacing="0" cellpadding="0" pagesize="10" class="simple" htmlId="tabId" id="element"
requestURI="displayTag.action" partialList="true" size="count">
<display:column property="id" title="用户ID" />
<display:column property="name" title="用户名"/>
<display:column property="pass" title="用户密码" />
<display:column property="href" title="连接"/>
</display:table>
</div>
</body>
</html>
分享到:
相关推荐
实现环境:struts2.2.1、dbutils1.3、jdk6、jboss5.1、displaytag1.2、mysql、eclipse3.5 以上环境内通过测试,具体用法请参考项目内readme.txt 注意: 1.数据读取方法请注意GoodsDAO.java,注意数据库连接。 2....
Displaytag是一个开源的Java库,专门用于创建复杂的表格布局,提供了许多高级功能,如分页、排序、国际化、导出等。在Web开发中,它作为一个JSP标签库使用,大大简化了在网页上处理表格数据的过程。"displaytag-jar....
- 在项目中,你需要将 `displaytag-1.2.jar` 文件放入 `WebRoot/WEB-INF/lib` 目录,这是 Displaytag 的核心库。 - 如果需要导出功能(例如 PDF 或 Excel),还需要导入其他扩展库,如 `displaytag-export-poi.jar...
7. **性能优化**:DisplayTag 通过延迟加载和按需计算来提高性能,只在必要时才从数据库获取数据,减少不必要的网络传输。 8. **标签API**:DisplayTag 提供了一套丰富的JSP标签,如`<display:table>`、`...
标题中的"displaytag-1.0-src.zip"表明这是DisplayTag 1.0版本的源代码包,而"displaytag-1.2-bin"则是1.2版本的二进制发行版,通常包含编译好的JAR文件,可以直接在项目中使用。 描述中提到的“从数据库获得数据,...
同时,还有一些第三方的分页标签库,如DisplayTag,提供了更丰富的分页功能,如排序、导出等。 4. **实例解析:JSP通用分页显示1.2** 提供的压缩包"JSP通用分页显示1.2.rar"包含了实现分页的示例代码。其中可能...
在这个例子中,文件名"**displaytag-1.2-bin**"表明我们使用的是DisplayTag 1.2版本。将其解压后,将jar文件添加到项目的类路径中。 2. **创建数据模型**:定义一个包含数据列表的Java对象,例如`List<MyObject>`,...
8. **数据源和模型绑定**:DisplayTag可以与任何JavaBean或POJO(Plain Old Java Object)进行绑定,从数据库或其他数据源获取数据并显示在表格中。 9. **导出功能**:DisplayTag支持将表格数据导出为CSV、Excel、...
4. `displaytag-1.2.jar`:DisplayTag的核心库,包含了所有与表格和分页相关的标签和类。 5. `commons-logging-1.1.1.jar`:一个日志抽象层,允许应用程序选择底层的日志实现,如Log4j或Java内置的日志框架。 在...
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/1.2" %> ``` 接下来,我们可以创建一个DisplayTag的表格,并指定数据源,比如一个Java集合或数据库查询的结果集: ```jsp <!-- Define ...
本文将详细介绍一种常用的JSP分页插件——DisplayTag,并探讨其在实现分页以及登录验证中的应用。 **DisplayTag插件** DisplayTag是一个开源的Java Web分页和表格展示库,它提供了丰富的表格样式和分页功能,极大...
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/1.2" %> ... <!-- Add more columns as needed --> ``` 3. **后端处理**:在对应的Action类中,处理请求并准备数据列表。这可能...
DisplayTag是一个开源的Java Web开发库,用于生成复杂的表格,提供了很多高级功能,如排序、分页、国际化、导出等。它简化了在Web应用中处理表格展示的工作,极大地提高了开发效率。以下是对DisplayTag标签、源码、...
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/1.2/displaytag" %> ``` 2. **设置表格**:定义表格并设置分页属性,如每页大小、排序等: ```jsp <!-- 列定义 --> 列1"/> 列2"/> ...
首先,在后台控制器(例如使用Spring MVC)中,你需要查询数据库并准备分页信息: ```java @GetMapping("/users") public ModelAndView getUsers(@RequestParam Optional<Integer> page) { int currentPage = page...
1. 数据源:这是分页的基础,可以是数据库查询结果、文件内容等。 2. 每页条目数:用户每一页想看到的数据量。 3. 当前页数:用户当前浏览的是哪一页。 4. 总页数:根据数据源的总条目数和每页条目数计算得出。 5. ...
2. **性能考虑**:分页可能会增加数据库的负担,尤其是在大数据集和多级分页时。可以考虑使用缓存技术,如Hibernate的二级缓存,来减少数据库访问。 3. **用户交互**:提供清晰的分页导航,包括“首页”、“上一页...
在Spring和Hibernate结合的项目中,Display Tag可以帮助我们构建高效的分页系统,使得用户可以轻松地浏览大量的数据库记录。 首先,我们需要在项目的`pom.xml`文件中添加Display Tag的依赖,确保能够使用其提供的...
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/1.2" %> ``` 接着,你需要在JSP页面中定义一个`display:table`标签,该标签将承载数据并处理分页。例如: ```jsp <!-- Add more columns...
<%@ taglib prefix="display" uri="http://displaytag.sourceforge.net/1.2" %> 姓名" /> 年龄" /> 邮箱" /> ``` 在这个例子中,`list`是后台传入的列表对象,`name`、`age`和`email`是列表对象中的属性。`...