基于B/S体系结构开发应用系统
,B/S体系结构也暴露出了许多不足地方,具体表现在以下几个方面:
(1) 由于浏览器只是为了进行WEB浏览而设计的,当其应用于WEB应用系统时,许多功能不能实现或实现起来比较困难。比如通过浏览器进行大量的数据输入,或进行报表的应答都是比较困难和不便的。
(2) 复杂的应用构造困难。虽然可以用ActiveX、Java等技术开发较为复杂的应用,但是相对于发展已非常成熟C/S的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术供使用。
(3) HTTP可靠性低有可能造成应用故障,特别是对于管理者来说,采用浏览器方式进行系统的维护是非常不安全与不方便的。
(4) WEB服务器成为对数据库的唯一的客户端,所有对数据库的连接都通过该服务器实现。WEB服务器同时要处理与客户请求以及与数据库的连接,当访问量大时,服务器端负载过重。
(5) 由于业务逻辑和数据访问程序一般由JavaScript、VBScript等嵌入式小程序实现,分散在各个页面里,难以实现共享,给升级和维护也带来了不便。同时由于源代码的开放性,使得商业规则很容易暴露,而商业规则对应用程序来说则是非常重要的。
 
在该种结构体系中,一些需要用WEB处理的,满足大多数访问者请求的功能界面(如信息发布查询界面)采用B/S结构。后台只需少数人使用的功能应用(如数据库管理维护界面)采用C/S结构。组件位于WEB应用程序中,客户端发出HTTP请求到WEB SERVER。WEB SERVER将请求传送给WEB应用程序。WEB应用程序将数据请求传送给数据库服务器,数据库服务器将数据返回WEB应用程序。然后再由WEB SERVER将数据传送给客户端。对于一些实现起来困难的功能或一些需要丰富的HTML页面,通过在页面中嵌入ActiveX控件来实现。
采用这种结构优点在于:(1)充分发挥了充分了B/S与C/S体系结构的优势,弥补了二者不足。充分考虑用户利益,保证浏览查询者方便操作的同时也使得系统更新简单,维护简单灵活,易于操作。(2)信息发布采用B/S结构,保持了瘦客户端的优点。装入客户机的软件可以采用统一的WWW浏览器。而且由于WWW浏览器和网络综合服务器都是基于工业标准,可以在所有的平台上工作。(3)数据库端采用C/S结构,通过ODBC/JDBC连接。这一部分只涉及到系统维护、数据更新等,不存在完全采用C/S结构带来的客户端维护工作量大等缺点。并且在客户端可以构造非常复杂的应用,界面友好灵活,易于操作,能解决许多B/S存在的固有的缺点。(4)对于原有基于C/S体系结构的应用,可以非常容易地升级到这种体系结构,只需开发用于发布的WWW界面,可以保留原有的C/S结构的某些子系统,充分地利用现有系统的资源。使得现有系统或资源无需大的改造即可以连接使用,保护了用户以往的投资(5)通过在浏览器中嵌入ActiveX控件可以实现在浏览器中不能实现或实现起来比较困难的功能。比如通过浏览器进行报表的应答。另外,在客户端ActiveX控件的加盟,可以丰富HTML页面,产生另人惊奇的效果。(6)将服务器端划分为WEB服务器和WEB应用程序两部分。WEB应用程序采用组件技术实现三层体系结中的商业逻辑部分,达到封装源代码,保护知识产权的目的。Internet应用程序大部分属于分布式应用程序,采用组件技术一个重要特点就是它的处理能力能够随着用户数量、数据量所需性能的提高而增加。COM的无逢扩展集COM+,有着如内存数据库、负载平衡等强大的功能。
4 实例
下面以某学校学生管理系统为例说明B/S结构软件的设计方法,该系统采用B/S体系结构与COM+技术相结合。通过该系统管理人员可以对学生的学籍、学生的日常表现、学生的学习成绩、学校教师、学校的资产进行管理与维护。任课教师可以通过浏览器查询所教班级学生各种相关信息。学校管理人员通过浏览器对学校的学生、教师等信息进行管理与维护以及有关查询统计功能。学校资产管理人员通过C/S体系结构实现对学校资产的管理维护。
本系统结合了ASP技术和COM+技术,是一个三层结构。表示层由ASP页面组成,用以实现WEB页面显示和调用COM+组件,业务逻辑和数据访问由一组用VC实现的COM+组件构成。为了便于维护、升级和实现分布式应用,在实现过程中,又将业务逻辑层和数据访问层分离开,ASP页面不直接调用数据访问层,而是通过业务逻辑层来调用数据库。
4.1 COM组件技术应用
该系统的实现主要分为三个部分:数据库、COM+组件和ASP页面。其中数据库与ASP页面的实现与一般B/S结构的WEB应用相似。COM+实现可分为三个步骤:COM+组件的设计、COM+应用程序的生成和组件注册、基于属性编程。该管理系统利用VC中的ATL开发COM+组件。下面是该系统中一个定制组件部分主要代码
在showscore.asp页面中接受、辨别用户的查询请求,做出不同的查询处理。当客户的身分为教师或教务员时,可以查询所有学生的成绩;当客户的身分为学生时,只能查询本人的成绩。
定制COM组件Score.dll进行查询处理。首先设计该组件的接口,为组件设计四个属性:SubjNo(课程号),Term(课程所属学期),ClassNo(班级号)和StuNo(学号)。定义两个方法Requ 《基于B/S体系结构开发应用系统(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/169391.html
(1) 由于浏览器只是为了进行WEB浏览而设计的,当其应用于WEB应用系统时,许多功能不能实现或实现起来比较困难。比如通过浏览器进行大量的数据输入,或进行报表的应答都是比较困难和不便的。
(2) 复杂的应用构造困难。虽然可以用ActiveX、Java等技术开发较为复杂的应用,但是相对于发展已非常成熟C/S的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术供使用。
(3) HTTP可靠性低有可能造成应用故障,特别是对于管理者来说,采用浏览器方式进行系统的维护是非常不安全与不方便的。
(4) WEB服务器成为对数据库的唯一的客户端,所有对数据库的连接都通过该服务器实现。WEB服务器同时要处理与客户请求以及与数据库的连接,当访问量大时,服务器端负载过重。
(5) 由于业务逻辑和数据访问程序一般由JavaScript、VBScript等嵌入式小程序实现,分散在各个页面里,难以实现共享,给升级和维护也带来了不便。同时由于源代码的开放性,使得商业规则很容易暴露,而商业规则对应用程序来说则是非常重要的。
 
; 为克服以上不足,在原有B/S体系结构基础上,采用一种新的体系结构,如图2所示。
在该种结构体系中,一些需要用WEB处理的,满足大多数访问者请求的功能界面(如信息发布查询界面)采用B/S结构。后台只需少数人使用的功能应用(如数据库管理维护界面)采用C/S结构。组件位于WEB应用程序中,客户端发出HTTP请求到WEB SERVER。WEB SERVER将请求传送给WEB应用程序。WEB应用程序将数据请求传送给数据库服务器,数据库服务器将数据返回WEB应用程序。然后再由WEB SERVER将数据传送给客户端。对于一些实现起来困难的功能或一些需要丰富的HTML页面,通过在页面中嵌入ActiveX控件来实现。
采用这种结构优点在于:(1)充分发挥了充分了B/S与C/S体系结构的优势,弥补了二者不足。充分考虑用户利益,保证浏览查询者方便操作的同时也使得系统更新简单,维护简单灵活,易于操作。(2)信息发布采用B/S结构,保持了瘦客户端的优点。装入客户机的软件可以采用统一的WWW浏览器。而且由于WWW浏览器和网络综合服务器都是基于工业标准,可以在所有的平台上工作。(3)数据库端采用C/S结构,通过ODBC/JDBC连接。这一部分只涉及到系统维护、数据更新等,不存在完全采用C/S结构带来的客户端维护工作量大等缺点。并且在客户端可以构造非常复杂的应用,界面友好灵活,易于操作,能解决许多B/S存在的固有的缺点。(4)对于原有基于C/S体系结构的应用,可以非常容易地升级到这种体系结构,只需开发用于发布的WWW界面,可以保留原有的C/S结构的某些子系统,充分地利用现有系统的资源。使得现有系统或资源无需大的改造即可以连接使用,保护了用户以往的投资(5)通过在浏览器中嵌入ActiveX控件可以实现在浏览器中不能实现或实现起来比较困难的功能。比如通过浏览器进行报表的应答。另外,在客户端ActiveX控件的加盟,可以丰富HTML页面,产生另人惊奇的效果。(6)将服务器端划分为WEB服务器和WEB应用程序两部分。WEB应用程序采用组件技术实现三层体系结中的商业逻辑部分,达到封装源代码,保护知识产权的目的。Internet应用程序大部分属于分布式应用程序,采用组件技术一个重要特点就是它的处理能力能够随着用户数量、数据量所需性能的提高而增加。COM的无逢扩展集COM+,有着如内存数据库、负载平衡等强大的功能。
4 实例
下面以某学校学生管理系统为例说明B/S结构软件的设计方法,该系统采用B/S体系结构与COM+技术相结合。通过该系统管理人员可以对学生的学籍、学生的日常表现、学生的学习成绩、学校教师、学校的资产进行管理与维护。任课教师可以通过浏览器查询所教班级学生各种相关信息。学校管理人员通过浏览器对学校的学生、教师等信息进行管理与维护以及有关查询统计功能。学校资产管理人员通过C/S体系结构实现对学校资产的管理维护。
本系统结合了ASP技术和COM+技术,是一个三层结构。表示层由ASP页面组成,用以实现WEB页面显示和调用COM+组件,业务逻辑和数据访问由一组用VC实现的COM+组件构成。为了便于维护、升级和实现分布式应用,在实现过程中,又将业务逻辑层和数据访问层分离开,ASP页面不直接调用数据访问层,而是通过业务逻辑层来调用数据库。
4.1 COM组件技术应用
该系统的实现主要分为三个部分:数据库、COM+组件和ASP页面。其中数据库与ASP页面的实现与一般B/S结构的WEB应用相似。COM+实现可分为三个步骤:COM+组件的设计、COM+应用程序的生成和组件注册、基于属性编程。该管理系统利用VC中的ATL开发COM+组件。下面是该系统中一个定制组件部分主要代码
在showscore.asp页面中接受、辨别用户的查询请求,做出不同的查询处理。当客户的身分为教师或教务员时,可以查询所有学生的成绩;当客户的身分为学生时,只能查询本人的成绩。
定制COM组件Score.dll进行查询处理。首先设计该组件的接口,为组件设计四个属性:SubjNo(课程号),Term(课程所属学期),ClassNo(班级号)和StuNo(学号)。定义两个方法Requ 《基于B/S体系结构开发应用系统(第2页)》