1. 首先导入包:displaytag-1.2.jar,commons-lang.jar和standard.jar;commons-beanutils.jar;这四个jar包

2. 然后在jsp页面做一个引用: <%@ taglib uri="http://displaytag.sf.net/el" prefix="display" %>

3. 接着我们定义一个list

  1. <%
  2. List test = new ArrayList( 6 );
  3. test.add( "Test String 1" );
  4. test.add( "Test String 2" );
  5. test.add( "Test String 3" );
  6. test.add( "Test String 4" );
  7. test.add( "Test String 5" );
  8. test.add( "Test String 6" );
  9. request.setAttribute( "test", test );
  10. %>

4. 最后当我们想在jsp页面上显示这个list时,我们只需要写一句话 <display:table name="test" />

5. 显示结果:


解释:

1. 关于导入jar包,经过测试以上四个jar包可以完成以上最基本的显示了。可选的jar包还有:
commons-logging
commons-collections
log4j
itext (optional, for pdf/rtf export)
displaytag-export-poi
最保险的就是将下载的例子war包解压缩后,其中WEB-INF/lib文件夹下所有jar包全拷贝到自己的项目下

2. 关于引用标签库,以前知道的方法有三种:其中两种都需要在web.xml文件中使用taglib元素配置tld文件的位置,然后在jsp页面中引用,而这种直接在jsp页面引用的方法有两个限制:tomcat容器得是5.0(另说4.0,不过现在的项目基本都是5.0往上啦)以上,然后得是和jar包中tld文件中的uri一致(废话,肯定得一致啊。。。)

3. 关于定义一个list,displaytag不仅可以显示list,数组也可以的。Map,Set也可以,但是显示的时候是无序的。

4. 关于使用displaytag标签,上面只是最简单最粗暴的使用方式,就是直接显示list集合中的所有元素的所有属性,显示的时候是每一行对应一个元素,每一列对应元素的一个属性/字段。这一点和Hibernate很相似。

5. 最后是显示结果,首先是惨不忍睹的样式问题,直接就是裸装上阵啊,毫无样式,看来得自己写样式,这样也好,可以自定义。然后是发现只有一列,这是因为list集合中的元素就是一个字符串,而不是一个bean对象,如果是bean对象,则必须提供相应的get方法。

6.  总结:displaytag的基本使用还是非常简单的,不过目前的使用方式实在是糟蹋了displaytag,任何一个项目都不会这么简单的使用它,并且displaytag可以提供的功能也是非常多的:分页,导出,排序,易扩展

displaytag 简单使用流程的更多相关文章

  1. 基于modelsim-SE的简单仿真流程—下

    基于modelsim-SE的简单仿真流程—下 编译 在 WorkSpace 窗口的 counter_tst.v上点击右键,如果选择Compile selected 则编译选中的文件,Compile A ...

  2. 基于modelsim-SE的简单仿真流程—上

    基于modelsim-SE的简单仿真流程 编写RTL功能代码 要进行功能仿真,首先得用需要仿真的模块,也就是RTL功能代码,简称待测试的模块,该模块也就是在设计下载到FPGA的电路.一个电路模块想要有 ...

  3. 微信公众号PHP简单开发流程

    原文:微信公众号PHP简单开发流程 微信公众号开发分傻瓜模式和开发者模式两种,前者不要考虑调用某些接口,只要根据后台提示傻瓜式操作即可,适用于非专业开发人员. 开发模式当然就是懂程序开发的人员使用的. ...

  4. Java变量&&简单程序流程&&循环

    变量:强类型局部变量: 1.先赋值,后使用 2.作用范围:从定义开始,到所在代码块结束 3.重合范围内不允许重复命名 数据类型(8中基本类型) byte 1B -128~127 short 2B -3 ...

  5. Slickflow.NET 开源工作流引擎快速入门之一: 简单序列流程代码编写示例

    前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从一个最简单的流程来示例说明,如何快速了解引擎代码的编写. 版本: .NETCore 2.1 ...

  6. drupal 开发简单站点流程

    友情推广:Uminicmf 一个基于thinkphp开发的OA框架.http://blog.csdn.net/youmypig/article/details/51727713 drupal 简单站点 ...

  7. RNA-seq简单处理流程

    RNA_seq pipline RNA_seq pipline PeRl 2018年3月7日 首先说明一下我做RNA-seq处理流程的文件树格式: RNA-seq/ data/ GRCh38.gtf ...

  8. jmeter(4)——简单测试流程

    今天通过一个简单的例子梳理一下用jmeter进行测试的流程 1.确定被测网站:gogomall.com 2.制定测试指标:响应时间和错误率 3.设计测试场景 4.具体测试步骤 1>创建一个测试计 ...

  9. HttpClient介绍和简单使用流程

    HttpClient SpringCloud中服务和服务之间的调用全部是使用HttpClient,还有前面使用SolrJ中就封装了HttpClient,在调用SolrTemplate的saveBean ...

随机推荐

  1. PHP防止SQL注入的方法

    [一.在服务器端配置] 安全,PHP代码编写是一方面,PHP的配置更是非常关键. 我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最 ...

  2. sersync做实时同步(第二步)

    配置文件一般都在sersync2的根目录下.为.xml文件 下面做逐行的进行解释说明: <host hostip="localhost" port="8008&qu ...

  3. SCM管理器

    OpenSCManager 打开SCM管理器 CloseServiceHandle 关闭句柄 CreateService 创建服务 OpenService 打开服务 ControlService 控制 ...

  4. iOS开发网络篇—网络请求(HTTP协议)小结

    iOS开发网络篇—网络请求(HTTP协议)小结 iOS开发网络篇—网络请求(HTTP协议)小结 1. 聊一下HTTP协议(协议的完整的通信过程) 2.通信过程 1> 请求 * 客户端 --> ...

  5. 转:40多个关于人脸检测/识别的API、库和软件

    文章来自于:http://blog.jobbole.com/45936/ 自从谷歌眼镜被推出以来,围绕人脸识别,出现了很多争议.我们相信,不管是不是通过智能眼镜,人脸识别将在人与人交往甚至人与物交互中 ...

  6. 为什么都反对XML而支持使用json呢?

    一个使用上的因素:JSON的结构更容易映射至一般语言的数据结构. XML和JSON的主要组成成分: XML是element.attribute和element content. JSON是object ...

  7. Android ContentProvider完整案例

    ContentData类,提供数据常量: /** * 提供ContentProvider对外的各种常量,当外部数据需要访问的时候,就可以参考这些常量操作数据. * @author HB * */ pu ...

  8. perl 安装AnyEvent::HTTP

    perl 版本 ActivePerl_5.16.2.msi

  9. Android录音服务

    MediaRecorder Mediarecorder=new MediaRecorder();//创建一个MediaRecorder对象 Mediarecorder.setAudioSource(M ...

  10. MSSQL 标准PROC 写法

    MSSQL 标准PROC 写法 ALTER PROC [dbo].[usp_ADM_InsertFlowSortInfo]@FlowSortName NVARCHAR(50),AS/*PAGE: 分类 ...