框架开拓

by admin on 2019年11月26日

根据Web的运用类别日常富含两某些:服务器和顾客端浏览器。服务器首要对业务进行逻辑管理,而客户对服务器上作业逻辑的震慑,使Web应用往往拥有复杂性和惊人动态性的特色。这种特征使得基于Web应用的系统开垦相比复杂、处理困难。为了有效地减轻上述难题,减少开垦周期,减弱维护费用,首要政策是
对Web应用进行建立模型。UML是面向对象本事世界中占主导地位的集结建立模型语言。其它,.NET框架在通用语言运转时CL福睿斯的底蕴上,提供了全面包车型大巴底蕴类
库、数据库访谈本领ADO.NET和互连网开采本领ASP.NET,使开辟者能够长足营造Web应用。由此,本文首要搜求基于.NET框架Web应用的
UML建立模型及开采方法,并将该情势用于我开辟的斟酌所管理体系中,实际利用申明该方法可以有效地降落系统开辟和拘押的眼花缭乱,提升经济效果与利益。

Web应用的构架方式

Web应用的核心构架满含浏览器、网络和Web服务器。浏览器向服务器央浼Web页,Web页或者满含由浏览器解释实施的客商端脚本,何况能够与浏览器、页内容和页中蕴含的此外控件(Java
Applet、ActiveX控件和插件等卡塔 尔(阿拉伯语:قطر‎举办相互作用。客户向Web页输入新闻或通过拔尖链接导航到其余Web页,与系统开展交互作用,改造系统的“业务情状”。

1、瘦Web客户端

首要适用于依赖Internet的接受,对客商端配置大概平素不调控。客户端只须求正式Web浏览器,能够乞求和出示专门的学业的HTML页面。全部的政工逻辑都在服务器上施行。

      客商端浏览器通过HTTP左券向服务器乞求页面能源,服务器将被倡议的UENVISIONL深入分析为文件系统中的文件,或然由应用服务器管理并大概改换工作情况,拿到乞请的页面,再次回到给顾客端。

2、胖Web客户端

胖Web客商端对于能够规定客户端配置和浏览器版本的Web应用是最切合的。顾客端通过HTTP与服务器通讯,使用DHTML、Java
applet恐怕ActiveX控件施行工作逻辑。HTTP的无连接性情,决定了客商端脚本、ActiveX控件和Java
Applet只好同顾客端对象开展互相。图1显得了构架中指标时期的涉及。


图1  胖Web客户端构架中的主要参与者

客商端显示选用的页面时,实践放到的脚本,那一个本子常常能够在不相同的线程中执行,通过DOM接口与页面内容实行互相。

3、Web传输

Web传输方式除了利用HTTP担任顾客端和服务器的通讯之外,仍然为能够运用IIOP和DCOM等协商以支撑布满式对象系统。Web页面通过远间隔对象桩
和长途对象传输公约与远程对象服务器通讯,由服务器管理远程业务对象的生命周期,向顾客端对象提供劳动。图2呈现了各组件之间的关联。


图2  Web传输构架中的主要参与者

长途对象桩是二个目的,在客户端实行,并与远程对象具有雷同的接口。当通过这么些目的调用方法时,那一个点子被卷入起来,使用远程对象传输公约RMI/DCOM发送到远程对象服务器,服务器解释央求,实例化并调用实际指标实例中的方法。

实际上利用中,往往遵照专业必要,综合应用上述构架。在我们的切磋所管理连串中,综合运用了瘦Web客商端和Web传输构架。顾客端接受了
java
script举行客商端验证,把通过证实的数码交到服务器管理。在数额的后台管理上,选取了Web传输构架,保持客商端与服务器的盛放连接,以便
举行很短时间的、较复杂的对话。

  UML的Web应用扩张

UML(Unified Modeling
Language卡塔尔是意气风发种通用的可视化建立模型语言,适用于各个软件开辟方法、软件生命周期的逐个阶段、各类应用领域以致种种开垦工具。但在对Web应用进行建立模型时,它的部根据地件不可能与规范UML建立模型成分一生机勃勃对应,由此必需对UML举办扩展。

      UML的二种为主扩充机制包蕴构造型、标识值和约束。在这之中最珍视的扩大机制是构造型,它不能够更改原模型的组织,但能够在模型成分上附加新的语
义,平常用“《构造型名》”来表示。节制是模型成分中的语义关系,定义了模型怎么着组织在联合签名,日常用后生可畏对“{}”之间的字符串表示。标志值是对模型成分特性的扩展,大超级多的模子成分都有与之提到的特色,平时用带括号的字符串表示。

1、Web页建模

Web页大概同期包含顾客端脚本和劳务器端脚本,由此必得各自为政建立模型。服务器端Web页面平日包罗由服务器试行的台本,每三次被倡议时都在服务器上
组合,更新职业逻辑状态,再次回到给浏览器。顾客端Web页可能富含数据、表现格局以至业务逻辑,由浏览器解释试行,并能够与客户端组件相关联,如Java
Applet、ActiveX、插件等。两者之间通过定向关系相互关联。这种关系关系的构造型为?build?。

Web应用中的拔尖链接代表导航路线,用构造型为?link?的涉嫌关系表示。标识值用于定义随拔尖链接央浼传递的参数列表,供服务器端Web页使用。图3描述了Web页之间的关联。


图3  Web页之间的关系

.NET框架中山高校部起家的是服务器端Web页,经编写翻译后生成HTML代码传递到顾客端浏览器。同偶然间,为了进步效率,对于那些不含有业务逻辑的Web
页,在.NET框架中能够一直用HTML成分创建顾客端Web页,再创设起与相应的服务器端Web页之间的调用关系。

2、表单建立模型

表单是Web页的中央输入机制,包涵<input>、<select> 和
<textarea>等输入成分,用《Form》构造型实行建立模型。《Form》未有操作,与之相互的操作是包涵表单的Web页的天性。它能够与作为输入控件的
Applet或ActiveX
控件关联,还足以把表单内容交给到服务器进行管理。图4陈说了满含表单的客户端Web页与服务器的并行进度。


图4  包含表单的客户端Web页与服务器的交互过程

.NET中每二个页面唯有二个表单,满含全部的输入元素,日常表现为劳动器端控件或顾客端控件,个中服务器端控件由服务器端Web页经过编写翻译后传送到客商端。

3、组件建立模型

Web应用中的组件分为服务器端组件和顾客端组件两类。服务器端较复杂的事体逻辑平时由中间层实现,富含生龙活虎组封装了具备职业逻辑的已编写翻译好的零零部件。由此,使用中间层不仅可以够拉长质量,况兼能够分享整个应用的业务职能。客商端Web页中比比都已的零件是Java
Applet和ActiveX,利用它们访谈浏览器和客户端的各类财富,实现HTML无法兑现的效果。

Web应用扩大定义了《static page》和《dynamic
page》五个抽象组件构造型。《static page》完毕顾客端组件。《dynamic
page》的根本职分是在运作时系统的情理文件和逻辑视图中的逻辑表现之间提供映射。图5和图6分别代表那三种组件达成的逻辑视图。


图5  由《dynamic page》实现的逻辑视图类

图6  由《static page》实现的客户端组件

4、框架建立模型

Web应用扩大定义了构造型《frameset》和《target》以至涉及关系构造型《targeted
link》来达成对框架的建立模型。《frameset》直接照射到HTML的<frameset>标识。《target》表示最近Web页引用的别样Web页或框架。《targeted
link》是指向另四个Web页的一流链接,但它要在特定对象中手艺提供。图7展现了舆论管理的框架模型


图7  论文管理框架模型
 

   基于.NET框架的Web应用开荒

.NET框架是生龙活虎种基于通用语言的编程框架,提供了全新的编制程序模型:WebForm模型和WebService模型,提供了圆满的底子类库、数据库访问技能ADO.NET和互联网开拓才能ASP.NET,为Web应用的费用提供了精锐的支持。

1、Web页的落实

.NET框架提供了WebForm开辟模型,利用内嵌的种种服务器组件来扭转服务器端Web页。它能够饱含部分关键的页面成分:客户控件可能自定义控
件等。顾客控件User
Control在.NET框架中是以.ascx为增添名的文件,能够在三个Web页面中应用,实今世码的录取。自定义控件Custom
Control是在.NET中开创或在本来控件上进行改造,增加新职能,以完成特定必要的控件,能够被多少个应用程序调用。

2、Web页导航情势

.NET框架中的页面导航航空模型型式展示了Web页之间的关系,能够用下列二种方式落到实处。

(1卡塔尔超级链接

行使HTML超链接控件或HyperLink控件能够达成页面之间的链接。当中HyperLink服务器控件允许在代码中改过其NavigateUrl属性,进而构造出实际对象可依照使用的当下场所动态变化的超链接。

(2)用Response.Redirect 实现

当Response.Redirect(
)方法被调用时,制造HTTP应答,此中建议了景况代码302(表示目的已经改动卡塔尔国和新的靶子UEnclaveL。浏览器选择到该答复,发出八个对新U福睿斯L的乞请。 
即重定向操作爆发在客商端,涉及到四次与服务器的通讯。

(3)用Server.Transfer 实现

      这种情势把奉行流程从当下的ASPX页面转到同风华正茂服务器上的另七个ASPX页面。但新的页面仍利用前生龙活虎页面创立的应答流。 浏览器中的U福睿斯L不会转移,重定向完全在劳动器端进行。因而,这种艺术能够防止不需要的网络通讯,获得较好的性质和浏览效果。

(4)用Server.Execute 实现

此办法允许当前的ASPX页面实践同风流洒脱服务器上的钦定ASPX页面,钦点的ASPX页面推行完结后,调节流程重返原页面中爆发Server.Execute(
)调用的职位,被调用页面可以访谈调用页面包车型客车表单数据和询问字符串集结。暗中同意情形下,被调用页面包车型客车出口追加到当下应答流。可是,Server.Execute(
)方法有三个重载的点子,允许通过贰个TextWriter对象拿到被调用页面包车型地铁出口,实际不是直接增加到输出流,那样,在调用页面中得以方便地调节被调用页面输出结果的职位。 

3、数据库操作

数据库处于Web应用的最尾部,存放系统数据和有个别后台数据库逻辑,如存储进程、触发器等。它与专门的学业逻辑层和客户界面分开,易于管理和维护,实施效能高,安全性能好。

(1卡塔 尔(英语:State of Qatar)Oracle数据库操作

.NET框架提供了System.Data.OracleClient和System.Data.奥莱Db
命名空间,达成对Oracle数据库的支撑,此中前面一个的针对较强,本文的实例中运用了此命名空间。

数据库连接字符串为三回九转数据库提供须求的参数,常常保存在配备文件web.config中,以简化代码完结和有扶持布置。

Web应用中对数据库的操作频仍,常常状态下,把对数据库的各样操作集成在叁个数据库操作类中,在必要举办数据库操作的地点只需调用此类的各类法子就能够。

(2卡塔尔国Oracle数据库中LOB对象的存取

Web应用中的二进制文件、图片、大段文本等在数据库中的存取,平日都要用大指标(LOB卡塔 尔(英语:State of Qatar)完成。.NET框架提供了OracleLob类来达成对
Oracle中BLOB、CLOB、NCLOB等数据类型的操作。Oracle中落到实处大段文本存入CLOB字段的经过能够代表为:

①用SQL语句向数据库中增多叁个CLOB字段为empty_clob( )的记录;

②发端作业,锁定刚步向的笔录,把要写入CLOB字段的内容用流或CLOB的Write(
)方法写入;

③付出业务,达成对CLOB字段的写入;

Oracle中对CLOB类型数据的读取进度相对轻松,不须求对数据库记录进行锁定:

①施行SQL 语句得到OracleDataReader对象;

②用OracleDataReader对象的GetOracleLob(
)方法得到要读取的CLOB字段的OracleLob对象;

③用OracleLob对象的Read( )方法或流读出CLOB字段的剧情;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图