displaytag 简单使用流程
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
- <%
- List test = new ArrayList( 6 );
- test.add( "Test String 1" );
- test.add( "Test String 2" );
- test.add( "Test String 3" );
- test.add( "Test String 4" );
- test.add( "Test String 5" );
- test.add( "Test String 6" );
- request.setAttribute( "test", test );
- %>
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 简单使用流程的更多相关文章
- 基于modelsim-SE的简单仿真流程—下
基于modelsim-SE的简单仿真流程—下 编译 在 WorkSpace 窗口的 counter_tst.v上点击右键,如果选择Compile selected 则编译选中的文件,Compile A ...
- 基于modelsim-SE的简单仿真流程—上
基于modelsim-SE的简单仿真流程 编写RTL功能代码 要进行功能仿真,首先得用需要仿真的模块,也就是RTL功能代码,简称待测试的模块,该模块也就是在设计下载到FPGA的电路.一个电路模块想要有 ...
- 微信公众号PHP简单开发流程
原文:微信公众号PHP简单开发流程 微信公众号开发分傻瓜模式和开发者模式两种,前者不要考虑调用某些接口,只要根据后台提示傻瓜式操作即可,适用于非专业开发人员. 开发模式当然就是懂程序开发的人员使用的. ...
- Java变量&&简单程序流程&&循环
变量:强类型局部变量: 1.先赋值,后使用 2.作用范围:从定义开始,到所在代码块结束 3.重合范围内不允许重复命名 数据类型(8中基本类型) byte 1B -128~127 short 2B -3 ...
- Slickflow.NET 开源工作流引擎快速入门之一: 简单序列流程代码编写示例
前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从一个最简单的流程来示例说明,如何快速了解引擎代码的编写. 版本: .NETCore 2.1 ...
- drupal 开发简单站点流程
友情推广:Uminicmf 一个基于thinkphp开发的OA框架.http://blog.csdn.net/youmypig/article/details/51727713 drupal 简单站点 ...
- RNA-seq简单处理流程
RNA_seq pipline RNA_seq pipline PeRl 2018年3月7日 首先说明一下我做RNA-seq处理流程的文件树格式: RNA-seq/ data/ GRCh38.gtf ...
- jmeter(4)——简单测试流程
今天通过一个简单的例子梳理一下用jmeter进行测试的流程 1.确定被测网站:gogomall.com 2.制定测试指标:响应时间和错误率 3.设计测试场景 4.具体测试步骤 1>创建一个测试计 ...
- HttpClient介绍和简单使用流程
HttpClient SpringCloud中服务和服务之间的调用全部是使用HttpClient,还有前面使用SolrJ中就封装了HttpClient,在调用SolrTemplate的saveBean ...
随机推荐
- PHP防止SQL注入的方法
[一.在服务器端配置] 安全,PHP代码编写是一方面,PHP的配置更是非常关键. 我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最 ...
- sersync做实时同步(第二步)
配置文件一般都在sersync2的根目录下.为.xml文件 下面做逐行的进行解释说明: <host hostip="localhost" port="8008&qu ...
- SCM管理器
OpenSCManager 打开SCM管理器 CloseServiceHandle 关闭句柄 CreateService 创建服务 OpenService 打开服务 ControlService 控制 ...
- iOS开发网络篇—网络请求(HTTP协议)小结
iOS开发网络篇—网络请求(HTTP协议)小结 iOS开发网络篇—网络请求(HTTP协议)小结 1. 聊一下HTTP协议(协议的完整的通信过程) 2.通信过程 1> 请求 * 客户端 --> ...
- 转:40多个关于人脸检测/识别的API、库和软件
文章来自于:http://blog.jobbole.com/45936/ 自从谷歌眼镜被推出以来,围绕人脸识别,出现了很多争议.我们相信,不管是不是通过智能眼镜,人脸识别将在人与人交往甚至人与物交互中 ...
- 为什么都反对XML而支持使用json呢?
一个使用上的因素:JSON的结构更容易映射至一般语言的数据结构. XML和JSON的主要组成成分: XML是element.attribute和element content. JSON是object ...
- Android ContentProvider完整案例
ContentData类,提供数据常量: /** * 提供ContentProvider对外的各种常量,当外部数据需要访问的时候,就可以参考这些常量操作数据. * @author HB * */ pu ...
- perl 安装AnyEvent::HTTP
perl 版本 ActivePerl_5.16.2.msi
- Android录音服务
MediaRecorder Mediarecorder=new MediaRecorder();//创建一个MediaRecorder对象 Mediarecorder.setAudioSource(M ...
- MSSQL 标准PROC 写法
MSSQL 标准PROC 写法 ALTER PROC [dbo].[usp_ADM_InsertFlowSortInfo]@FlowSortName NVARCHAR(50),AS/*PAGE: 分类 ...