个应用提供统一的接口,来实现报表的输出。
每个用户可以生成不同的报表模板。
用户应被允许设定权限以禁止或允许其他用户浏览、修改或删除他们的模板。
第1章绪论 全文共有四章:第一章阐述了课题的背景和来源,包括项目工程概况和目前主流报表系统的市场状况比较;第二章介绍了报表系统实现的关键技术和TMN的领域特性,主要包括TMN的体系结构和应用功能和J2EE系统平台,并结合JBoss应用服务器(论文研究的报表系统部署于其上)阐述了J2EE中的关键技术;第三章结合具体业务介绍了系统的需求分析和设计
方案,包括详细的需求分析和各模块的设计;第四章在第三章的基础之上,完成了报表系统的实现,包括系统实现重点难点,部分典型界面,测试说明以及在安徽合肥开局的实施效果。
第2章报表系统关键技术和TMN领域特性 第2章报表系统关键技术和TMN领域特性2.1 J2EE关键技术 本文所介绍的报表系统完全构架于J2EE系统框架之上。
在系统的过程中,涉及较多J2EE的相关技术。
文中系统最终采用JBoss配合Tomcat作为服务器,形成了较为完整的J2EE体系结构。
下面对J2EE标准和JBoss服务器的一些基本知识进行简要介绍。
2.1.1 J2EE多层结构的优势 本文介绍的报表系统采用当今流行的J2EE架构,具有多层结构,与传统的两层结构相比有一定的优势,具体分析如下。
体系结构是指程序的宏观的物理的或者逻辑的程序的结构。
包括代码程序包的组织,在网络的各个节点之间的程序包的分布,程序的各个组成部分之间的通讯和协同工作机制【6】。
一个应用程序通常可以分成三个层次:用户界面层、业务逻辑层和数据库存储层。
用户界面层主要负责用户界面的显示和更新,业务逻辑层负责具体的业务逻辑的处理,数据库存储主要负责数据存取和其他的数据库操作。
企业应用体系结构从最初的两层发展到现在的多层经历了巨大的变化【7J。
在传统的两层客户/服务器系统中,客户机与数据库服务器通过数据库桥API(Application Pro蓼舢ing Interface)直接通信,这些数据库桥API中的典型代表就是ODBC(Open Database CoIlIlectivity)。
在传统Client/Server结构中,用户界面层、业务逻辑层和数据存储层都在客户端,这种系统通常被称为胖客户C/S结构【引。
采用这种C/S结构势必造成以下缺陷:安装成本高,因为数据库驱动
程序必须在每台客户机安装和设置;数据库驱动程序升级的成本高;数据库的变更成本高;企业逻辑的改变代价高,在C/S结构中,企业逻辑是在客户器 第2章报表系统关键技术和删领域特性中实现的,因此企业逻辑的变更意味着重新修改原代码和重新编译和安装;数据库的连接成本高,因为每一个客户器都要负责维持一个到数据库服务器的连接,即使当某一客户器不与数据库
通信时,该连接不能被释放。
传统的三层体系结构克服了二层体系结构的一些限制。
这个三层体系结构将用户界面放置于客户端,而将业务逻辑层和数据存储层放置在中间层服务器,也就是应用服务器上。
应用服务器通过重用那些跨越多个客户的昂贵资源来改进了系统的可伸缩性,例如对数据库的连接可以被共享和重新利用。
可伸缩性的改进带来了性能的改进。
这个体系结构也改进了安全与应用管理【91。
虽然三层体系结构消除了二层体系结构中的一些缺陷,但是它仍然存在一些不足之处。
首先,复杂性:三层结构中各个组件可以分开放置,系统必须考虑处理分布式应用的复杂关系。
分布式应用引入了开发者必须处理的系统级程序设计复杂性,使程序员必须处理分布、多线程、安全等问题。
其次,应用缺乏可移植性:因为适用于三层平台应用框架的各个提供商在他开发的框架中使用了不同的应用编程接口,因此,独立软件提供商写出的应用程序就不可能在所有应用框架提供商提供的应用服务器上成功部署。
而且与W曲不兼容:传统的三层体系结构不能直接与W曲一起工作。
传统的两层结构存在诸多缺点,因此众多的软件厂商转向开发N层结构模式。
N层结构是在传统的两层结构中加入几层实现的,在多层结构中表现层,企业逻辑层和数据层在物理意义上被分开,因而每一层可以独立地进行扩充和修改而不影响应用程序的其它部分。
典型的多层结构的应用就是用网络浏览器通过w曲服务器执行CGI(Computer Graphics IIlterface)和数据库通信。
在该模式中,浏览器和部分的W曲服务器程序构成了表现层,企业逻辑则完全集中在Application服务器执行的程序,数据库则完全是数据目,石o N层结构的优点体现在:安装费用低廉,因为在客户端都应用网络浏览器,譬如IE和Netscape浏览器;数据库的变更成本低,因为你只要在服务器端替换新的驱动程序而没有像在C/S结构中那样需要在客户端进行重新配置;企业逻辑的变更成本低,我们只要修改服务器端的程序而不需要对客户 第2章报表系统关键技术和TMN领域特性做任何修改;对数据库的连接可以被共享和重新利用;每一层可独立变化而不影响其它层;性能下降和错误发生可以控制在局部;软件的维护成本低廉。
. 由于多层结构在服务器方面体现出许多的优点,因此有很多软件商宣布将在服务器方构造以Java为基础的多层框架。
Java最初推出时的主要用途是制作产生动态.