论文部分内容阅读
摘要:Web技术正在迅速成为支持企业范围应用程序的优选平台,基于Windows DNA的三层结构体系框架分布式应用程序已经成为计算主流。在比较详尽地论述了三层结构框架的整体构建思想基础上,示例了分布式应用程序的设计和实现过程。
关键词:Windows DNA;分布式应用程序;三层结构;XML Web services
中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)23-923-02
Building Windows DNA Applications
YUAN Ai-min
(Mianyang Vocational and Technical College,Mianyang 621000,China)
Abstract: The three-tier distributed applications based on Windows DNA have become the mainstream since the Web technology is becoming the prompt chooses platform of enterprise-wide application. Provides an introduction to the DNA architecture and takes you step-by-step through the development of an actual DNA application.
Key words: Windows DNA; Distributed Application; Three-tier structure; XML Web services
1 引言
当Internet技术特别是Web技术逐渐成为计算主流时,业务计算的模型发生了巨大变化。这一变化的焦点是客户端/服务器模式,因而Web技术正在迅速成为支持企业范围应用程序的优选平台。
可以认为Web模型是由各种信息和应用程序集合所组成的层松散地连接而成,而这些信息和应用程序又驻留在种类繁多的硬件平台上。Interne从一开始便提供一个可伸缩、可扩展和高度可用的公共信息传送平台。应用程序设计时可以使用 .NET平台开发、部署和支持分布式应用程序。既高度集成又灵活,此平台使开发人员能够生成端对端的业务解决方案,这些解决方案可以综合利用现有的体系结构和应用程序。
微软把它的三层分布式应用模式体系结构称作为Microsoft Windows Distributed internetApplications Architecture(Windows分布式网间应用程序)即Windows DNA。是一种用于生成紧耦合分布式Web应用程序的体系结构。因为分布式应用程序开始要求更多的松耦合原则,Microsoft体系结构移动到.NET平台上。
2 Windows DNA三层体系结构
Windows DNA三层结构的企业应用总体方案,主要原则是将应用程序逻辑地分为表示层、业务逻辑层和数据服务层三个基本层。
表示层为企业应用的客户端部分,它负责与用户进行交互。包括到应用程序的胖客户端接口或者瘦客户端接口。胖客户端通过直接使用Microsoft Win32 API或间接通过Windows 窗体,为操作系统的功能提供完全的编程接口,并广泛地使用组件。瘦客户端(Web浏览器)正迅速成为许多开发人员优先选择的接口。开发人员能够生成可在三个应用程序层的任何一个上执行的业务逻辑。利用ASP.NET Web应用程序和XML Web services,瘦客户端能够以可视形式为应用程序提供丰富、灵活和交互的用户界面。瘦客户端还具有在平台之间提供更大程度的可移植性的优点。
业务逻辑层构成了企业应用的业务逻辑规则,它负责接受与传递表示层所需的信息,并与数据服务层进行数据交互。该层被分为应用程序服务器与服务,它们可用于支持客户端。可以使用.NET Framework编写Web应用程序以利用COM+服务、消息队列(MSMQ)、目录服务和安全性服务。应用程序服务反过来可以与数据访问层上的若干个数据服务进行交互。
数据服务层为应用与后台数据库进行各种联系并保证数据的安全性、完整性、一致性。包括ADO.NET(通过使用脚本语言或编程语言提供对数据的简化编程访问)、OLEDB(由 Microsoft开发的公认的通用数据提供程序)、XML(用于指定数据结构的标记标准)。
一个简单的分布式应用程序模型包含与中间层进行通信的客户端,中间层本身由应用程序服务器和包含业务逻辑的应用程序组成。应用程序反过来又与提供和存储数据的数据库进行通信。
3 创建分布式应用程序
生成一个基于Web的客户端,以显示SQL Server Pubs示例数据库中的Authors表,具有查找和编辑功能的应用程序。程序的三层结构如图1所示。
3.1 分布式应用程序的创建过程
开发分布式应用程序的方案是一次创建一层,多半是从数据层开始,然后移到中间层业务规则对象,最后创建用户界面层。在本例中,已经生成了数据,使用SQL Server中的Pubs 数据库。因此,本例将从创建业务对象,即XML Web services开始,然后生成用户界面即Web窗体页。
3.2创建中间层业务对象
创建的业务对象将在Web服务器上运行,提供分布式应用程序所需的性能和可伸缩性。另外,把业务对象实现为XML Web services,这样客户端可以使用标准Internet协议从任何平台与业务对象进行通信。
XML Web services组件将保存数据连接和数据集定义。然后将添加XML Web services 方法以公开此数据集,这使其他应用程序能够查看和修改此数据集。最后公开方法GetAuthors 将从数据库返回数据集,公开方法UpdateAuthors将用用户的更改更新数据库。
public authors1 GetAuthors()
{ authors1 authors = new authors1();
sqlDataAdapter1.Fill(authors);
return authors;}
public authors1 UpdateAuthors(authors1 authorChanges)
{ if (authorChanges != null) {
sqlDataAdapter1.Update(authorChanges);
return authorChanges; }
else { return null; }
}
3.3 创建用户界面
对于Web客户端部分,通过Web窗体设计器创建一个与标准HTML 3.2浏览器兼容的Web页。在服务器上,Web窗体代码将调用XML Web services 以从数据库中检索包含作者信息的数据。
private void Page_Load(object sender, System.EventArgs e)
{ AuthorsWebClient.localhost.AuthorsService ws =
new AuthorsWebClient.localhost.AuthorsService();
ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
AuthorData.Merge(ws.GetAuthors());
if (! Page.IsPostBack) {
DataGrid1.DataBind();
}
4 结束语
通过Windows DNA的三层结构对应用程序进行分层,使用基于组件的编程技术,并充分利用.NET平台与 Microsoft Windows操作系统的功能,开发人员可以生成具有高度可伸缩性和灵活性的应用程序。
参考文献:
[1] Microsoft.面向.Net的Web应用程序设计[M].北京:高等教育出版社,2004.
[2] APTECH.Net企业级应用开发—ASP.NET & Web Service[M].北京:科学技术文献出版社,2006.
[3] 尚俊杰.ASP.NET程序设计[M].北京:清华大学出版社,2006.
关键词:Windows DNA;分布式应用程序;三层结构;XML Web services
中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)23-923-02
Building Windows DNA Applications
YUAN Ai-min
(Mianyang Vocational and Technical College,Mianyang 621000,China)
Abstract: The three-tier distributed applications based on Windows DNA have become the mainstream since the Web technology is becoming the prompt chooses platform of enterprise-wide application. Provides an introduction to the DNA architecture and takes you step-by-step through the development of an actual DNA application.
Key words: Windows DNA; Distributed Application; Three-tier structure; XML Web services
1 引言
当Internet技术特别是Web技术逐渐成为计算主流时,业务计算的模型发生了巨大变化。这一变化的焦点是客户端/服务器模式,因而Web技术正在迅速成为支持企业范围应用程序的优选平台。
可以认为Web模型是由各种信息和应用程序集合所组成的层松散地连接而成,而这些信息和应用程序又驻留在种类繁多的硬件平台上。Interne从一开始便提供一个可伸缩、可扩展和高度可用的公共信息传送平台。应用程序设计时可以使用 .NET平台开发、部署和支持分布式应用程序。既高度集成又灵活,此平台使开发人员能够生成端对端的业务解决方案,这些解决方案可以综合利用现有的体系结构和应用程序。
微软把它的三层分布式应用模式体系结构称作为Microsoft Windows Distributed internetApplications Architecture(Windows分布式网间应用程序)即Windows DNA。是一种用于生成紧耦合分布式Web应用程序的体系结构。因为分布式应用程序开始要求更多的松耦合原则,Microsoft体系结构移动到.NET平台上。
2 Windows DNA三层体系结构
Windows DNA三层结构的企业应用总体方案,主要原则是将应用程序逻辑地分为表示层、业务逻辑层和数据服务层三个基本层。
表示层为企业应用的客户端部分,它负责与用户进行交互。包括到应用程序的胖客户端接口或者瘦客户端接口。胖客户端通过直接使用Microsoft Win32 API或间接通过Windows 窗体,为操作系统的功能提供完全的编程接口,并广泛地使用组件。瘦客户端(Web浏览器)正迅速成为许多开发人员优先选择的接口。开发人员能够生成可在三个应用程序层的任何一个上执行的业务逻辑。利用ASP.NET Web应用程序和XML Web services,瘦客户端能够以可视形式为应用程序提供丰富、灵活和交互的用户界面。瘦客户端还具有在平台之间提供更大程度的可移植性的优点。
业务逻辑层构成了企业应用的业务逻辑规则,它负责接受与传递表示层所需的信息,并与数据服务层进行数据交互。该层被分为应用程序服务器与服务,它们可用于支持客户端。可以使用.NET Framework编写Web应用程序以利用COM+服务、消息队列(MSMQ)、目录服务和安全性服务。应用程序服务反过来可以与数据访问层上的若干个数据服务进行交互。
数据服务层为应用与后台数据库进行各种联系并保证数据的安全性、完整性、一致性。包括ADO.NET(通过使用脚本语言或编程语言提供对数据的简化编程访问)、OLEDB(由 Microsoft开发的公认的通用数据提供程序)、XML(用于指定数据结构的标记标准)。
一个简单的分布式应用程序模型包含与中间层进行通信的客户端,中间层本身由应用程序服务器和包含业务逻辑的应用程序组成。应用程序反过来又与提供和存储数据的数据库进行通信。
3 创建分布式应用程序
生成一个基于Web的客户端,以显示SQL Server Pubs示例数据库中的Authors表,具有查找和编辑功能的应用程序。程序的三层结构如图1所示。
3.1 分布式应用程序的创建过程
开发分布式应用程序的方案是一次创建一层,多半是从数据层开始,然后移到中间层业务规则对象,最后创建用户界面层。在本例中,已经生成了数据,使用SQL Server中的Pubs 数据库。因此,本例将从创建业务对象,即XML Web services开始,然后生成用户界面即Web窗体页。
3.2创建中间层业务对象
创建的业务对象将在Web服务器上运行,提供分布式应用程序所需的性能和可伸缩性。另外,把业务对象实现为XML Web services,这样客户端可以使用标准Internet协议从任何平台与业务对象进行通信。
XML Web services组件将保存数据连接和数据集定义。然后将添加XML Web services 方法以公开此数据集,这使其他应用程序能够查看和修改此数据集。最后公开方法GetAuthors 将从数据库返回数据集,公开方法UpdateAuthors将用用户的更改更新数据库。
public authors1 GetAuthors()
{ authors1 authors = new authors1();
sqlDataAdapter1.Fill(authors);
return authors;}
public authors1 UpdateAuthors(authors1 authorChanges)
{ if (authorChanges != null) {
sqlDataAdapter1.Update(authorChanges);
return authorChanges; }
else { return null; }
}
3.3 创建用户界面
对于Web客户端部分,通过Web窗体设计器创建一个与标准HTML 3.2浏览器兼容的Web页。在服务器上,Web窗体代码将调用XML Web services 以从数据库中检索包含作者信息的数据。
private void Page_Load(object sender, System.EventArgs e)
{ AuthorsWebClient.localhost.AuthorsService ws =
new AuthorsWebClient.localhost.AuthorsService();
ws.Credentials = System.Net.CredentialCache.DefaultCredentials;
AuthorData.Merge(ws.GetAuthors());
if (! Page.IsPostBack) {
DataGrid1.DataBind();
}
4 结束语
通过Windows DNA的三层结构对应用程序进行分层,使用基于组件的编程技术,并充分利用.NET平台与 Microsoft Windows操作系统的功能,开发人员可以生成具有高度可伸缩性和灵活性的应用程序。
参考文献:
[1] Microsoft.面向.Net的Web应用程序设计[M].北京:高等教育出版社,2004.
[2] APTECH.Net企业级应用开发—ASP.NET & Web Service[M].北京:科学技术文献出版社,2006.
[3] 尚俊杰.ASP.NET程序设计[M].北京:清华大学出版社,2006.