基于J2EE的三层B/S信息系统研究 |
作者:佚名 发布时间:2005-04-02 来源:不详
|
摘要:随着互联网和软 结构方面有多种解决方案。 决方案,本文结合实际应用 决方案做了对比。
|
件开发结构的不断发展,目前出 但是随着多平台应用的出现,J2 讲述了J2EE解决方案在实际企业
|
现比较流行的B/S结构,在实现B/S EE成为最受软件应用欢迎的企业解 应用中的实现,并与其他分布式解
|
关键词:J2EE,B/S,三层结构,SERVLET |
随着软件系统的规模和 择更为重要的因素 ,三层 ,是建立企业级管理信息系 发展,目前在多层应用结构 优缺点,分别适用于不同规 ,说明三层模式的体系结构 框架结构来实现应用系统的
|
复杂性的增加 ,软件体系结构 客户/服务器体系结构为企业资 统的最佳选择。随着体系结构的 方面出现Java技术和.net技术的 模的系统的要求。 本文将结合 ,介绍基于三层模式的应用系统 实现方法。
|
的选择成为比数据结构和算法的选 源规划的整合提供了良好的框架 发展,软件框架结构方面也在不断 实现的不同的解决方案,二者各有 电信计划建设管理信息系统的实现 的分布式组件技术 ,阐述应用J2EE
|
传统的两层客户/服务 的网络环境下 (例如局域网 在多用户、多数据库且非安 法适应 。而且传统的两层
|
器模式比较适合于小规模、用户 )运行 。但是,随着应用系统 全的网络环境下(例如:Internet 结构还存在以下缺陷:
|
较少、单一数据库且在安全、快速 的规模不断扩大 ,复杂性越来越高 ) ,这种两层结构的应用模型将无
|
(1)它是单一服务器且以局域网为中 ;
|
心的 ,所以难以扩展至大型企业广域网或 Intranet
|
(2)受限于供应商,程序的升级维护必须由供应商重新开发扩展; |
(3)软、硬件的组合及集成能力有限 特定的客户端应用程序,而且企业的业务 升级需要每个客户端都要安装新的客户端 重用性差,各个模块相对独立;
|
;在软件上呈现出胖客户端,用户必须在客户端安装 逻辑都写在客户端应用程序中,程序维护困难,程序 应用程序,同时,对于程序开发商来说,程序模块的
|
基于以上原因,传统的 求的进一步提高,三层WEB
|
C/S模式已经不能适应发展的需 模式应运而生。
|
要,随着网络技术的普及和用户需
|
三层客户/服务器模式 (以下简称三 种模式在逻辑上将应用功能分为三层:客 户提供应用服务的图形界面,有助于用户 和数据层之间,专门为实现企业的业务逻 关联的应用模型,并把用户表示层和数据 务之间的联系,主要功能是执行应用策略 序。数据层是三层模式中最底层,他用来 对数据的请求。
|
层模式 )在两层模式的基础上,增加了新的一级。这 户显示层、业务逻辑层、数据层。客户显示层是为客 理解和高效的定位应用服务。业务逻辑层位于显示层 辑提供了一个明确的层次,在这个层次封装了与系统 库代码分开 。这个层次提供客户应用程序和数据服 和封装应用模式,并将封装的模式呈现给客户应用程 定义、维护、访问和更新数据并管理和满足应用服务
|
①良好的灵活性和可扩 应的改变,就能够达到目的
|
展性。对于环境和应用条件经常 。
|
变动的情况,只要对应用层实施相
|
②可共享性。单个应用 上节省了开发时间和资金投
|
服务器可以为处于不同平台的客 入;
|
户应用程序提供服务,在很大程度
|
③较好的安全性。在这 制哪些数据被改变和被访问
|
种结构中,客户应用程序不能直 ,而且还可控制数据的改变和访
|
接访问数据,应用服务器不仅可控 问方式 。
|
④增强了企业对象的重复可用性。“ 特定功能的对象。随着组件技术的发展,
|
企业对象”是指封装了企业逻辑程序代码,能够执行 这种可重用的组件模式越来越为软件开发所接受。
|
⑤三层模式成为真正意义上的“瘦客 率。
|
户端”,从而具备了很高的稳定性、延展性和执行校
|
⑥三层模式可以将服务 和负载平衡能力。
|
集中在一起管理,统一服务于客
|
户端,从而具备了良好的容错能力
|
电信计划建设管理信息 逻辑都集中在省公司管理和 据集中处理,因此在设计时 。
|
系统是由省电信公司对下属地市 制定,地市公司负责数据的录入 充分考虑各种体系结构的优缺点
|
电信公司进行统一管理,所有业务 和查询统计,用户的分布广泛,数 ,选择三层WEB模式进行开发实现
|
Microsoft的分布式COM(DCOM)技术 局域网、广域网甚至是Internet上计算机 户的应用程序就可以在任何网络位置上达 构如下图所示:
|
是将组建对象模型技术COM大大进行了扩展,是对在 对象之间的通信提供了完全的支持。通过使用DCOM用 到真正的分布性,从而满足客户应用的需要。整体结
|
由OMG提出的公共对象 一种构件实现规范,主要目 整体结构如下图所示:
|
请求代理结构CORBA对象是目前 标是使对象在分布式环境中可重
|
比较流行的一种中间件规范,也是 用、可移植和可互操作,CORBA的
|
以上两种分布式结构可 ,但是针对不同平台的应用
|
以实现在统一特定的环境下的应 和Internet上的应用,二者缺少
|
用,对于局域网中的实现比较流行 灵活性。
|
J2EE体系结构分为三个层次,分别是 本结构具有跨平台的特性,结构中的三个 表示层可以使用不同的客户端程序,因此 后台的应用系统集成中,可以把企业不同 有的资源不被破坏。基于J2EE来实现的WE
|
客户表示层、中间逻辑层和数据管理层及应用系统。 层次可以处于不同的平台下进行协作应用;因为客户 具有很好的分布性,可以适应分布式管理的要求;在 的应用系统集成到该结构中,因此可以有效的保护现 B服务的核心框架如下图所示:
|
用基于J2EE的体系结构开发的WEB服务还具有以下的优点: |
① 可以跨越中间防火 WEB服务的话,可以从客户
|
墙进行通信。因为WEB服务是利 界面直接调用中间层组件,而不
|
用HTTP最为传输媒介,中间层使用 必建立页面。
|
② 应用系统的集成。要把企业里不 来必然会花费很大的开发力量。通过WEB 其他程序使用。
|
同语言写成的,运行于不同平台上的各种程序集成起 服务可以使用标准的方法把功能和数据暴露出来,供
|
③ 所有的企业逻辑和 和可重用性好。
|
服务都集成封装在可重用、可移
|
植的EJB组件中,因此系统维护性
|
④中间件代码可以集中在处理业务逻辑上,无需考虑数据表示。 |
因为本次电信计划建设 统一管理,数据和程序集中 ,因此采用J2EE的框架结构
|
管理信息系统的业务逻辑和数据 在统一的服务器上,并且服务器 解决比较合适。
|
处理规则都是由集团公司和省公司 运行平台与客户端的运行平台不同
|
通过对各种解决方案和框架结构的比 们对系统的设计如下:
|
较,选择JAVA技术作为本次系统设计的应用技术,我
|
前台用户显示层使用js ,后台数据库使用Sybase数
|
p和servlet在浏览器上实现,中 据库。具体的企业应用结构如下
|
间使用EJB组件实现企业业务逻辑 所示:
|
其中中间件使用Bea公司的Weblogic7 数据库。
|
.0,开发工具使用JBuilder9.0,数据库使用SYBASE
|
在用户登录过程中,因为在整个客户 进行处理。具体的连接池实现如下:
|
端使用的用户比较多,因此在连接上我们使用连接池
|
public DBConnectionP
|
ool(String name, String URL,
|
String user, String password)
|
this.password = password; |
private void createP
|
ools(Properties props)
|
private Hashtable pools = new Ha
|
shtable();
|
String poolName = props.getPrope
|
rty("poolname").trim();
|
String url = props.g
|
etProperty(poolName+".url").
|
trim();
|
String user = props.
|
getProperty(poolName + ".use
|
r");
|
String password = pr
|
ops.getProperty(poolName + "
|
.password");
|
String maxconn = pro
|
ps.getProperty(poolName + ".
|
maxconn", "0");
|
DBConnectionPool poo
|
l=New DBConnectionPool(poolN
|
ame, url, user, password);
|
Utility.log(pool.toString()); |
pools.put(poolName, pool); |
Utility.log("成功创建连接池" + poolName); |
为了使用SessionBean进行登录确认 行监听,超过一定时间,自动切断用户登 登录后的权限控制是一个重点,我们在使 来实现权限的控制,具体的实现结构如下
|
处理,同时利用Bean的监听功能对用户的登录时间进 录连接,让用户进行重新登录。在应用系统中,用户 用J2EE框架结构的过程中,使用SERVLET的过滤功能 :
|
com.ibm.devworks.filters.IEFilter |
在业务逻辑处理上,我 件进行实现。客户做出请求 问数据库后将处理后的结果 使用。
|
们对各个业务进行相应的分解, 后,使用SERVLET处理后调用各 集返回给SERVLET,再汇集到客
|
然后针对每个业务逻辑应用EJB组 个业务模块处理逻辑,EJB组件访 户端进行显示,供用户进行查询和
|
本文提出的B/S模式的 请求处理层中还增加了一个 CGI模式相比,本系统结构 Web应用系统。另外在实现 程的条件。
|
系统结构已应用电信计划建设管 设备接口线程,用于通过SNMP协 有明显的优势,具有较高系统效 上还可以加强,比如进一步研究
|
理信息系统中,由于实际需要,在 议获取网络设备的信息。与传统的 率,尤其适合于构造功能复杂的 自动创建和撤销新的数据库操作线
|
|
|
|
|
|