`

[讨论] 列表组件在实际开发中的应用

阅读更多
最近比较关注YUI-EXT的GIRD组件,一直想学习一下他的代码,并且借鉴一下他好的设计,用到ecside中。

可是由于太过庞大的JS(对于我来说),看起来实在是挠头,于是也就作罢了(但新版本ecside借鉴了他的风格)。

现在市面上有很多基于js和ajax的列表组件,他们不同于传统的jsp tag方式的列表组件。

基于ajax的组件的特点通常是:
页面中使用一些标准的html、js代码
服务器端发送json或xml代码到客户端
客户端利用一套强大的js来解析数据,并生成列表。
(通常导出能力有限,甚至不支持导出)


传统列表组件特点通常是:
页面中使用一些标准的html、js代码,以及jsp tag
服务器端发送的代码已经是最后要展现出来的列表的html(xhtml)。
客户端再利用有限的js来实现一些功能的补充。

两者没有明显的优劣之分,各有所长。



(ecside总的来说站在传统tag列表组件一边,但我一直在努力的提高展现层的体验以及重【发音:众】用js,
但不知道我这样的努力会有什么结果,是把两者的优点结合起来了,还是缺点叠加了呢,这个还有待于进一步的观察和考研)



我在这里想和大家探讨一下下面的问题:
1 在实际的企业应用中,究竟两者中那种方式应用的更广呢?
2 在实际的企业应用中,绚丽的效果和特性,需要的多吗?
3 在实际的企业应用中,通常单页数据显示量超过500条的页面会很多吗?
4 在实际的企业应用中,通常需要的最大单页显示数据数目会是多少?
(我们这边是单页5000条)
5 列表组件不等于报表组件,但是在实际的企业应用中,拥有一定的统计汇总特性的列表组件肯定是受欢迎的(没有哪个企业会为了一些简单的统计功能就去使用复杂的报表组件的),那么大家通常最希望列表组件具备报表的哪些基本功能呢?

6 以后补充。。。。。


分享到:
评论
8 楼 xu2xiong 2007-04-10  
对于报表最好是采用比较成熟的报表工具,这样在格式和速度上能给客户更好的体验,同时也可以为下期项目赢取时间。
7 楼 johnnyhg 2007-04-09  
根据我的经验,一般的情况我在实际项目中慎用Ajax,公司也不推荐,特别对于一下报表之类的东西更是这样。
6 楼 qwertyu 2007-04-09  
5 楼 xu2xiong 2007-04-08  
采用Ajax的方式来显示数据在速度上我觉得会有很大的提升(在服务器端组织输出),在我实际生产的时候发现单页显示超过200行,无论采用何种方式(在服务器端组织输出要好很多),都有速度慢的情况,通常我们跟用户的约定是每页在25-50行之间,同时也提供单页显示调整功能,不过不允许超过三位数。
4 楼 fins 2007-04-06  
但是数据库端返回数据
客户端利用js来组装表格 这样的做法速度实在是一个大问题啊
3 楼 ahuaxuan 2007-04-05  
fins 写道

传统列表组件特点通常是:
页面中使用一些标准的html、js代码,以及jsp tag
服务器端发送的代码已经是最后要展现出来的列表的html(xhtml)。
客户端再利用有限的js来实现一些功能的补充。

两者没有明显的优劣之分,各有所长。

1最好还是基于ajax的组件比较好,尽量少的用jsp tag实现会比较受欢迎
2分页应该是能够让用户指定每页多少条比较好
3效果的话不追求太绚丽的效果,只需要实用的效果就ok了
2 楼 roc8633284 2007-04-05  
fins 写道

传统列表组件特点通常是:
页面中使用一些标准的html、js代码,以及jsp tag
服务器端发送的代码已经是最后要展现出来的列表的html(xhtml)。
客户端再利用有限的js来实现一些功能的补充。

个人感觉服务器端应该返回纯净的数据,客户端的功能是可配置的,客户端的灵活性,扩展性很强。
理由说不上,觉得这样好。
1 楼 LucasLee 2007-04-05  
fins 写道

我在这里想和大家探讨一下下面的问题:
1 在实际的企业应用中,究竟两者中那种方式应用的更广呢?
2 在实际的企业应用中,绚丽的效果和特性,需要的多吗?
3 在实际的企业应用中,通常单页数据显示量超过500条的页面会很多吗?
4 在实际的企业应用中,通常需要的最大单页显示数据数目会是多少?
(我们这边是单页5000条)
5 列表组件不等于报表组件,但是在实际的企业应用中,拥有一定的统计汇总特性的列表组件肯定是受欢迎的(没有哪个企业会为了一些简单的统计功能就去使用复杂的报表组件的),那么大家通常最希望列表组件具备报表的哪些基本功能呢?



Grid超出普通HTML table的意义在于几个方面:
1.现场编辑。直接在cell编辑数据。同时保留良好的浏览效果。
2.多条纪录的客户端数据缓存。编辑多条纪录,然后批量提交,交互的效率更高。

主要是这些。一些利于浏览的客户端排序、调整列的排列顺序、锁定行头列头等特性则相对次要。

不管用什么方式,单页数据在浏览器中都不宜过大,一般我认为500足够多了,结合查询和分页的技术。

最好不要把统计汇总等功能搞进来。或者要分清楚。简单的单据明细总数的算法是可以的,更复杂的报表是不宜在客户端用Javascript来执行的,效率是一个大问题。

相关推荐

    机器学习在用户行为审计中的应用.pdf

    在实际应用中,机器学习用户行为审计系统可以在多个领域发挥作用,如电信行业、银行业、电子商务等。例如,在电信行业中,机器学习用户行为审计系统可以用于分析用户流量数据,识别和标注异常用户,提高用户价值和...

    ArcEngine开发文档

    同时,文档还讨论了如何在 VB 环境中利用 ArcObjects 组件开发 ActiveX DLL。 1. 基础篇 ### 1.1.1. 如何在 ArcMap 的 VBA 环境中编程 ArcMap 是 ArcGIS 家族的一员,它内置了一种集成编程环境―VBA(Visual ...

    DELPHI 5开发人员指南

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    Delphi 5开发人员指南

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    机器学习在复合绝缘子缺陷超声检测中的应用与展望.pdf

    然而,复合绝缘子在实际应用中可能会出现各种缺陷,如裂缝、气泡、脏污等,这些缺陷可能会导致电力系统的不稳定或停电。 为了检测复合绝缘子的缺陷,人们已经开发了一些无损检测方法,如超声检测、X射线检测、红外...

    人工智能-机器学习-基于BS体系结构软件开发技术研究.pdf

    在本文中,我们将从基于BS体系结构应用系统开发的实际工作中,分析相关技术。我们将讨论基于BS体系结构的应用系统开发技术,包括组件理论、COM和CORBA技术等。 三层架构和BS体系结构的比较 在本文中,我们还将比较...

    Access数据库应用技术-教案-课题:任务1-使用向导创建窗体.docx

    Access数据库应用技术-教案-任务1-使用向导创建...* 讨论教学:教师和学生讨论数据库应用程序的设计和开发方法,分享经验和技巧。 * 练习教学:学生通过练习使用Access数据库应用技术处理数据,掌握处理数据的方法。

    Delphi 5开发人员指南.part1.rar

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    《Delphi5开发人员指南》(共2部分,第一部分)

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    Google Android SDK开发范例大全(完整版)

    下一节讨论构建 Android 应用程序所需的开发环境。 -------------------------------------------------------------------------------- 回页首 所需的工具 开始开发 Android 应用程序的最简捷的方式是下载 ...

    delphi 5开发人员指南

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    SAP Fiori Elements Development UX 403

    * 如何将 SAP Fiori 元素开发应用于实际项目中 * SAP Fiori 元素开发的成功案例和经验分享 * SAP Fiori 元素开发的未来趋势和发展方向 通过本课程,参与者将掌握 SAP Fiori 元素开发的技能,并能够独立地设计和...

    新版Android开发教程.rar

    的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...

    delphi 5开发人员指南(第一章)

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    Delphi 5开发人员指南.part2.rar

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    Delphi 5开发人员指南.part3.rar

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    《数据库原理及应用》教案14:理解嵌套查询、集合查询.pdf

    理解嵌套查询和集合查询 数据库原理及应用是数据库管理系统的核心组件之一,对于数据库的设计、开发和维护至关重要...在实际应用中,嵌套查询和集合查询可以用于解决复杂的查询问题,是数据库管理系统的重要组件之一。

    《Delphi5开发人员指南》(共2部分,第二部分)

    继而讨论了基于VCL和基于COM的开发技术,并全面介绍了数据库编程技术,包括多种组件的开发和调试、数据库开发及在网络上的应用,另外还为你提供了多种技巧;最后,综合前面的知识以建立一些大规模的实际应用程序。对...

    "BeeGo框架实现的一个WEB应用实例"数据库MYSQL脚本

    本应用是用BeeGo框架进行的一个WEB应用快速开发,是一个在生产环境实际运行的商业软件。 适用数据库MySQL,详细配置请参阅conf\global\app.ini。本应用打包部署工具为Bee。 前端采用了amazeui制作工作台页面,标准的...

    C#微软培训资料

    18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...

Global site tag (gtag.js) - Google Analytics