论文部分内容阅读
摘要:随着互联网的普及,许多中小型企业开始建立电子商务站点。在线交易有许多明显的优势。因此,我们分析先进的电子商务网站业务模型,采用流行的网络设计语言和先进的平台架构体系,对当今企业级的电子商务平台模型进行探讨。
关键词:电子商务;N层系统结构;.NET
Enterprise Electronic Commerce Model in .NET
Abstract:With the popularization of Internet, electronic commerce is no longer a strange topic. It is benefic for many enterprises to make use of EC. As to this, we analyze the advanced business model of EC website and adopt latest network technology and advanced platform to build up a system. As a result we do some discussions on the EC platform model of enterprise layer.
Key Words:Electronic Commerce;N tier;.
前言
开发一个具有实用价值的企业级应用软件,需要的不仅是高水平的编程技艺和开发技巧,更重要的是整个应用软件应符合企业级标准,既要考虑到企业当前的需求及规模,也要考虑到企业今后的发展。所以一个企业级的应用程序应具有健壮性、稳定性、可维护性和可扩展性等特点。为了方便对整个企业级电子商务平台的设计理念的探讨,我们采用.NET技术做了一个电子商务平台模型,取名为SunBook。SunBook围绕虚拟网上书店建立,其模型是典型的网上购物中最为普遍的B2C模式,包括浏览、搜索、购物车、客户管理、帐户管理和结账等基本功能。
SunBook的四层架构体系
一、N层架构概述
N层应用程序使开发有更大的灵活性和可扩展性,已经成为构建企业级软件的标准。N层应用程序就是被分成多个独立的逻辑部分的应用程序,每层有其特定的功能。层次系统要求上层子系统可以使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能。上层调用下层,从而完成多个复杂的业务功能。
二、SunBook架构分析
SunBook采用四层体系结构,即表现层(Web层)、业务外观层、业务规则层和数据访问层。
1.表现层(Web层)
该层为客户端提供对应用程序的访问,由 ASP.NET Web 窗体和代码隐藏文件组成。Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现浏览器端各种控件的事件处理。
2.业务外观层
该层为表现层提供处理帐户、类别浏览和购书的界面。
3.业务规则层
包含各种业务规则和逻辑的实现。
4.数据访问层
数据访问层为业务规则层提供数据服务。
另外,还包含两个辅助层,一个是系统框架层,它主要解决应用程序配置、异常处理、日志记录等问题。另一个是业务实体层(通用层),业务实体层解决了业务数据表现形式的问题。我们将在下文详细介绍业务实体层,数据访问层,业务外观层和业务规则层。
系统各层的逻辑关系参看系统的逻辑模型图。
说明:
1.箭头表示为“…使用…”。例如:“数据访问”子系统正在使用“系统框架”子系统。
2.浏览器首先调用的是表现层,然后该层将请求发送给业务外观层,业务外观层对请求进行初步的处理,判断是否需要调用业务规则层,还是直接调用数据访问层获取数据。最后由数据访问层访问数据库并按照来时的步骤返回结果到浏览器。
针对电子商务平台而言,普遍的分布式三层体系结构还不够完美,特别是在业务处理的各种功能实现方面会显得非常混乱。SunBook的四层体系结构能很好地解决这个问题。对此部分的进一步分析见“SunBook的业务外观与规则”部分。软件分层使得程序有良好的透明和封装、高内聚低藕荷、易于扩展、维护和重用,开发人员易于分工、提高开发效率,特别在架构方面定义清晰严谨,值得进行深入的学习和探讨。
SunBook的业务实体
根据需求分析SunBook应该实现八大功能:获取书籍类别数据;获取某类书籍数据;获取某本书籍详细数据;客户数据操作,例如创建、检索、更新客户数据项;获取客户信息;获取付款相关数据,例如信用卡号码等;获取定单摘要;获取定单详细信息。根据以上功能要求以及需求,按照“高内聚、低耦合”的原则可以明确应用程序需要处理四个逻辑业务实体:客户实体、定单实体、书籍类别实体和书籍实体。我们采用类型化的DataSet来表示这些业务实体。
数据是用于表示现实世界中诸如产品和定单这样的业务实体的。业务实体层解决了业务数据表现形式的问题。其核心是创建业务实体组建。其结果就是要将系统处理的数据进行有效规划和组织,建立包含用于各层间传递信息的数据集。
SunBook的数据访问
我们采用ADO.NET实现SunBook的数据访问。ADO.NET是.NET技术中有关数据访问的解决方案。
经过需求分析,SunBook中的数据访问有以下四点策略:
1.数据访问层对所有数据处理使用存储过程,使应用程序的数据访问层对数据库逻辑的更改更具灵活性。
2.数据访问类是无状态的,即它们不在实例数据成员内保持状态。客户端将特定操作所需的所有数据传递给方法。而方法将所有结果数据传递回客户端,然后立即释放每个数据访问对象,简化了资源管理。
3.数据访问层尽可能推迟数据库资源分配并且尽可能快地释放数据库资源,将数据库资源保留最短的时间。
4.SQL连接配置。在Web.Config文件存储应用程序的数据库连接字符串。通过其他文件的函数调用来读取SQL连接字符串。这样的策略方便更改SQL连接字符串而不用重新启动IIS。
分层结构确定了每层的功能。层与层之间通过一定的机制连接和通信。业务外观层和业务规则层通过数据访问层访问数据库中的数据。数据访问层通过业务实体层确定待处理的业务实体。数据访问层与业务实体层是通过类型化的DataSet来通信的。
SunBook的业务外观与规则
业务外观层为表现层提供处理帐户、类别浏览和购书的界面。业务规则层的功能是完成各种业务规则和逻辑的实现,主要完成如客户帐户、书籍定单的验证、定单税费计算等任务。
当表示层向服务器发出与数据库交互的请求时,几乎所有的调用都要通过业务外观层,然后才层层传递,一直到数据调用层完成与数据库的交互任务。这个过程分两种情况,一种情况是当这种请求涉及到了系统业务规则,例如税费计算、验证等问题,那么业务外观层就调用业务规则层进行处理,之后再通过业务规则层调用数据访问层与数据库交互。第二种情况是当这种请求并没有涉及到业务规则,只是简单的数据只读访问,例如检索每日推荐书目、检索某类别书籍的相关信息等问题,那么业务外观层可直接调用数据访问层,再通过数据访问层完成与数据库的交互。
我们从开发企业级应用程序的角度分析,把业务层分成业务外观层和业务规则层有很大的好处。在设计一个企业级应用程序过程中,我们需要考虑系统需求发生改变了怎么办,如何保证系统稳定可靠,如何能够快速地找到要寻找的代码,而不迷失在数以万计的代码中,如何才能使开发人员同时开工,加快系统开发进度,以上问题是系统设计人员需要考虑的事情。 在应用程序中,有些只是简单的操作,不需要经过处理,直接将数据显示到网页上。而有些是涉及到业务规则的复杂操作,这部分往往有许多不同的功能的类,操作起来也比较复杂。采用三层设计,是不能达到企业级应用程序需要的可扩展性、可维护性、稳定性、健壮性等要求的。业务外观层和业务规则层的创建,梳理了系统代码,使得系统流程井井有条,秩序井然。
总结
电子商务站点正蓬勃兴起,未来企业级的电子商务会更注重网页的响应速度、客户数据的安全性、系统运行的稳定性、系统运行成本,使用.NET技术是技术员建立企业级电子商务平台的一大法宝。
参考文献
【1】康博,译.VB.NET入门经典.清华大学出版社.
【2】康博,译.VB.NET和SQL Server 2000 高级编程.清华大学出版社.
【3】杨浩,译.ASP.NET电子商务入门经典.清华大学出版社.
【4】李英军,等,译.设计模式.机械工业出版社.
【5】联机帮助文献:如T-SQL语言等.
关键词:电子商务;N层系统结构;.NET
Enterprise Electronic Commerce Model in .NET
Abstract:With the popularization of Internet, electronic commerce is no longer a strange topic. It is benefic for many enterprises to make use of EC. As to this, we analyze the advanced business model of EC website and adopt latest network technology and advanced platform to build up a system. As a result we do some discussions on the EC platform model of enterprise layer.
Key Words:Electronic Commerce;N tier;.
前言
开发一个具有实用价值的企业级应用软件,需要的不仅是高水平的编程技艺和开发技巧,更重要的是整个应用软件应符合企业级标准,既要考虑到企业当前的需求及规模,也要考虑到企业今后的发展。所以一个企业级的应用程序应具有健壮性、稳定性、可维护性和可扩展性等特点。为了方便对整个企业级电子商务平台的设计理念的探讨,我们采用.NET技术做了一个电子商务平台模型,取名为SunBook。SunBook围绕虚拟网上书店建立,其模型是典型的网上购物中最为普遍的B2C模式,包括浏览、搜索、购物车、客户管理、帐户管理和结账等基本功能。
SunBook的四层架构体系
一、N层架构概述
N层应用程序使开发有更大的灵活性和可扩展性,已经成为构建企业级软件的标准。N层应用程序就是被分成多个独立的逻辑部分的应用程序,每层有其特定的功能。层次系统要求上层子系统可以使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能。上层调用下层,从而完成多个复杂的业务功能。
二、SunBook架构分析
SunBook采用四层体系结构,即表现层(Web层)、业务外观层、业务规则层和数据访问层。
1.表现层(Web层)
该层为客户端提供对应用程序的访问,由 ASP.NET Web 窗体和代码隐藏文件组成。Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现浏览器端各种控件的事件处理。
2.业务外观层
该层为表现层提供处理帐户、类别浏览和购书的界面。
3.业务规则层
包含各种业务规则和逻辑的实现。
4.数据访问层
数据访问层为业务规则层提供数据服务。
另外,还包含两个辅助层,一个是系统框架层,它主要解决应用程序配置、异常处理、日志记录等问题。另一个是业务实体层(通用层),业务实体层解决了业务数据表现形式的问题。我们将在下文详细介绍业务实体层,数据访问层,业务外观层和业务规则层。
系统各层的逻辑关系参看系统的逻辑模型图。
说明:
1.箭头表示为“…使用…”。例如:“数据访问”子系统正在使用“系统框架”子系统。
2.浏览器首先调用的是表现层,然后该层将请求发送给业务外观层,业务外观层对请求进行初步的处理,判断是否需要调用业务规则层,还是直接调用数据访问层获取数据。最后由数据访问层访问数据库并按照来时的步骤返回结果到浏览器。
针对电子商务平台而言,普遍的分布式三层体系结构还不够完美,特别是在业务处理的各种功能实现方面会显得非常混乱。SunBook的四层体系结构能很好地解决这个问题。对此部分的进一步分析见“SunBook的业务外观与规则”部分。软件分层使得程序有良好的透明和封装、高内聚低藕荷、易于扩展、维护和重用,开发人员易于分工、提高开发效率,特别在架构方面定义清晰严谨,值得进行深入的学习和探讨。
SunBook的业务实体
根据需求分析SunBook应该实现八大功能:获取书籍类别数据;获取某类书籍数据;获取某本书籍详细数据;客户数据操作,例如创建、检索、更新客户数据项;获取客户信息;获取付款相关数据,例如信用卡号码等;获取定单摘要;获取定单详细信息。根据以上功能要求以及需求,按照“高内聚、低耦合”的原则可以明确应用程序需要处理四个逻辑业务实体:客户实体、定单实体、书籍类别实体和书籍实体。我们采用类型化的DataSet来表示这些业务实体。
数据是用于表示现实世界中诸如产品和定单这样的业务实体的。业务实体层解决了业务数据表现形式的问题。其核心是创建业务实体组建。其结果就是要将系统处理的数据进行有效规划和组织,建立包含用于各层间传递信息的数据集。
SunBook的数据访问
我们采用ADO.NET实现SunBook的数据访问。ADO.NET是.NET技术中有关数据访问的解决方案。
经过需求分析,SunBook中的数据访问有以下四点策略:
1.数据访问层对所有数据处理使用存储过程,使应用程序的数据访问层对数据库逻辑的更改更具灵活性。
2.数据访问类是无状态的,即它们不在实例数据成员内保持状态。客户端将特定操作所需的所有数据传递给方法。而方法将所有结果数据传递回客户端,然后立即释放每个数据访问对象,简化了资源管理。
3.数据访问层尽可能推迟数据库资源分配并且尽可能快地释放数据库资源,将数据库资源保留最短的时间。
4.SQL连接配置。在Web.Config文件存储应用程序的数据库连接字符串。通过其他文件的函数调用来读取SQL连接字符串。这样的策略方便更改SQL连接字符串而不用重新启动IIS。
分层结构确定了每层的功能。层与层之间通过一定的机制连接和通信。业务外观层和业务规则层通过数据访问层访问数据库中的数据。数据访问层通过业务实体层确定待处理的业务实体。数据访问层与业务实体层是通过类型化的DataSet来通信的。
SunBook的业务外观与规则
业务外观层为表现层提供处理帐户、类别浏览和购书的界面。业务规则层的功能是完成各种业务规则和逻辑的实现,主要完成如客户帐户、书籍定单的验证、定单税费计算等任务。
当表示层向服务器发出与数据库交互的请求时,几乎所有的调用都要通过业务外观层,然后才层层传递,一直到数据调用层完成与数据库的交互任务。这个过程分两种情况,一种情况是当这种请求涉及到了系统业务规则,例如税费计算、验证等问题,那么业务外观层就调用业务规则层进行处理,之后再通过业务规则层调用数据访问层与数据库交互。第二种情况是当这种请求并没有涉及到业务规则,只是简单的数据只读访问,例如检索每日推荐书目、检索某类别书籍的相关信息等问题,那么业务外观层可直接调用数据访问层,再通过数据访问层完成与数据库的交互。
我们从开发企业级应用程序的角度分析,把业务层分成业务外观层和业务规则层有很大的好处。在设计一个企业级应用程序过程中,我们需要考虑系统需求发生改变了怎么办,如何保证系统稳定可靠,如何能够快速地找到要寻找的代码,而不迷失在数以万计的代码中,如何才能使开发人员同时开工,加快系统开发进度,以上问题是系统设计人员需要考虑的事情。 在应用程序中,有些只是简单的操作,不需要经过处理,直接将数据显示到网页上。而有些是涉及到业务规则的复杂操作,这部分往往有许多不同的功能的类,操作起来也比较复杂。采用三层设计,是不能达到企业级应用程序需要的可扩展性、可维护性、稳定性、健壮性等要求的。业务外观层和业务规则层的创建,梳理了系统代码,使得系统流程井井有条,秩序井然。
总结
电子商务站点正蓬勃兴起,未来企业级的电子商务会更注重网页的响应速度、客户数据的安全性、系统运行的稳定性、系统运行成本,使用.NET技术是技术员建立企业级电子商务平台的一大法宝。
参考文献
【1】康博,译.VB.NET入门经典.清华大学出版社.
【2】康博,译.VB.NET和SQL Server 2000 高级编程.清华大学出版社.
【3】杨浩,译.ASP.NET电子商务入门经典.清华大学出版社.
【4】李英军,等,译.设计模式.机械工业出版社.
【5】联机帮助文献:如T-SQL语言等.