最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

基于ASP.NET的B2C手机电子商务网站设计与实现

IT圈 admin 22浏览 0评论

2024年5月13日发(作者:种陶宁)

维普资讯

总第221期 

2008年第3期 

计算机与数字工程 

Computer&Digital Engineering 

Vol_36 No.3 

77 

基于ASP.NET的B2C手机电子商务网站设计与实现 

曾 凯 

(天津市医药科学研究所

摘要

天津300020) 

介绍利用ASP.NET构建完整的B2C手机电子商务网站的方法,阐述网站的框架设计和功能实现。网站利用 

工厂设计模式,使系统结构更加精简,更具有封装性,降低系统开发和维护的成本,提高系统模块的可复用性,有利于ASP. 

NET网站的快速开发。 

关键词 电子商务

中图分类号

ASP.NET工厂设计模式 

TP312 

1 引言 

在信息时代的今天,建立一个功能强大、界面 

美观的手机电子商务网站,建立电子商务系统平 

台,对企业的发展是至关重要的。好处是减少中间 

品信息的增加、修改和删除功能。商品列表按照商 

品类别显示商品。商品列表可以显示商品缩略图, 

商品型号名称及价格。点击商品名称或商品缩略 

图可以进行商品详细信息页。点击购物车可以将 

此商品放人购物车以待结算。 

(3)用户管理模块。包括:增加、删除、修改用 

户信息。 

环节、降低库存,它使买卖双方在网上沟通、洽谈, 

提高工作效率,实现企业与电子商务网站双赢。 

利用最新的ASP.NET框架技术和ADO.NET 

(4)订单管理模块。包括:订单生成,历史订 

单查询、管理。顾客可进人订单浏览界面查看自己 

所有订单的纪录。可以看到订单编号,订单日期, 

订单总金额。点击显示详细信息可看到订单的具 

数据库技术开发手机电子商务网站是当前IT界的 

个重要系统开发方式。面对SQL和Oracle等多 

种数据库的开发环境,网站利用工厂设计模式,增 

加系统的可复用性和可维护性,延长使用寿命。 

体信息,即订单号、订单日期、产品名称、产品类别、 

数量、单价、总计、用户编号。 

(5)其他管理模块。为使网站更加完善,便于 

消费者和商家之间的交流和沟通而设置的。包括 

2 系统设计 

2.1 网站模块 

像淘宝网、卓越网、美国在线等成功的商务网 

站都具有功能强大、模块清晰、高效率、高安全性等 

特点。在参考成功网站的基础上,根据实际需求, 

建立手机电子商务网站。本网站是一个在线的手 

机购买系统,用户可以通过各种能够连接到Inter— 

广告管理、购物导航信息和问题反馈信息管理。 

2.2环境配置 

作为服务器的计算机上必须安装SQL Serv— 

er2000(或Oracle数据库)及更高版本,操作系统为 

Win2000/Xp,并安装.NET Framework2.0版本。 

2.3系统框架设计 

B2C手机电子商务网站采用三层架构,即表现 

层、逻辑层和数据层。 

(1)表现层,用于完成界面与最终用户交互的 

net的终端进行在线的手机购买。在细致分析、调 

研之后,将网站分为5大模块: 

(1)用户注册和登录模块。该模块用于记录 

和确认顾客身份。顾客要按要求输人相关项目才 

能成为本网站的注册用户,只有已注册的用户并登 

功能,在应用程序里面是一些aspx的页面和代码。 

包括:网站首页、用户注册和登录、浏览搜索商品信 

息、查看购物车、购物导航等页面。 

(2)逻辑层,用于封装商业逻辑和规则,在应 

录后,才能在线购买手机商品并生成订单。注册用 

户通过首页输人用户名和密码,登录网站。 

(2)商品管理模块。包括:商品浏览、查询,商 

收稿日期:2007年10月13日,修回日期:2007年11月27日 

作者简介:曾凯,男,助理工程师,研究方向:计算机与网络应用。 

维普资讯

78 曾凯:基于ASP.NET的B2C手机电子商务网站设计与实现 总第221期 

图1 手机电子商务网站的交易流程 

用程序里面被封装为.NET组件,是系统数据处理 

的最高层。它建立在数据层之上,同时又把表现层 

的功能抽象化,为表现层提供服务。包括:消费者 

按手机种类浏览商品、搜索商品,存入购物车,提交 

订单等功能。 

(3)数据层,数据访问通过逻辑层中的数据访 

问组件与SQL Server Provider交互,所有的数据获 

取依靠存储过程来进行,而不是通过SQL语句。 

应用程序通过该层访问数据库,对用户信息、商品 

信息、订单信息进行添加、修改、删除等操作。 

为增加整个系统的可复用性,降低子系统之问 

的耦合度,简化数据库访问类的使用,该系统在数 

据层上采用工厂设计模式。 

因为在实际使用中如果不采用工厂设计模式, 

就会经常遇到以下问题:(1)若访问新的数据库 

时,需增加具体类,修改逻辑层代码;(2)若增加同 

类的新产品时,需增加具体类,修改逻辑层代码; 

(3)在对源代码保密的情况下将系统移植给其他 

软件公司时,需重新修改数据层的具体类和逻辑层 

代码。这样做的缺点是代码冗长,可利用率低,工 

作效率低,可移值性差。 

工厂设计模式的概述:简单工厂方法思想为工 

厂方法做了引导。简单工厂方法是根据提供给它 

的数据,返回几个可能类中的一个类的实例,通常 

返回的类都有一个共同的父类和共同的方法。也 

就是简单工厂能返回具有同样方法的类的实例。 

它的缺点是由于工厂类集中了所有产品创建逻辑, 

如果不能正常工作的话会对系统造成很大的影响。 

如果增加新产品必须修改工厂角色的源码。而工 

厂模式的设计对简单工厂方法进行了延伸。 

简单工厂只有一个工厂类,而工厂设计模式是 

类的创建模式,又叫做虚拟构造子模式或多态性工 

厂模式。它的用意是定义一个创建产品对象的工 

厂接口,将实际创建工作推迟到子类中。在工厂设 

计模式中,核心的工厂类不再负责所有的产品的创 

建,而是将创建的工作交给子类去做。这个核心类 

成为一个抽象工厂的角色,仅负责给出具体工厂子 

类必须实现的接口,而不接触哪一个产品类实例化 

的细节。这使得工厂设计模式可以允许系统在不 

修改具体工厂角色的情况下引进新的产品,使其具 

有超越简单工厂模式的优越性。 

工厂设计模式的优点主要有三点: 

(1)分离了具体的类。抽象工厂模式帮助你 

控制一个应用创建的对象的类,因为一个工厂封装 

创建产品对象的责任和过程。它将客户和类的实 

现分离,客户通过他们的抽象接口操纵实例,产品 

的类名也在具体工厂的实现中被分离,它们不出现 

在客户代码中。 

(2)它使得易于交换产品系列。一个具体工 

厂类在一个应用中仅出现一次一即在它初始化的 

时候。这使得改变一个应用的具体工厂变得很容 

易。它只需改变具体的工厂即可使用不同的产品 

配置,这是因为一个抽象工厂创建了一个完整的产 

品系列,所以整个产品系列会立刻改变。 

(3)它有利于产品的一致性。当一个系列的 

产品对象被设计成一起工作时,一个应用一次只能 

使用同一个系列中的对象,这一点很重要,而抽象 

工厂很容易实现这一点。 

在基于ASP.NET的手机电子商务网站中工厂 

设计模式的思路:考虑到数据库访问的问题。如访 

问SQL数据库或Oracle数据库,应该分别导人数 

据访问项目SQLServerDAL和OracelDAL,进而采 

用不同的访问方法。 

为了在数据库变化时,不影响到逻辑层的代 

码,系统对数据库的访问项目进行了再封装,不仅 

实现代码与数据库平台分离,还达到精简代码的目 

的。那么面对多种数据库,可以先定义一个访问数 

维普资讯

第36卷(2008)第3期 计算机与数字工程 79 

据库的接口,然后针对不同的数据库,让工厂类决 

定调用哪个数据库。这正是工厂方法的设计应用。 

工厂设计模式的实现方式为:创建一个作为接口 

Void Insert(AccountInfo account);//将新添的用 

户信息account存人数据库 

Void Update(Accountlnfo account);//根据account 

的IDAL项目,它只有定义,其真正的实现是在数据访 

问项目SQLServerDAL和OracelDAL中编写。 

修改用户信息 

} 

为支持运行时确定加载哪一个具体类 

(SQLServerDAL或OracelDAL),需要创建工厂类,它 

从配置文件web.config中读入一个值以确定应该使 

IDAL接口项目只是声明一系列方法,而具体的实现细 

节由数据访问项目完成。 

(2)为Sql数据库编写相应的数据访问项目 

用反射加载哪一个程序集,通过.Net的反射命名空 

间,可以加载某个特定程序集并用该程序集创建某个 

对象的实例。数据层的这种实现方式优势是如果创 

建应用程序的第二个版本或使用新的数据库时,就不 

需改动作为业务逻辑层的BLL项目。 

根据这三层架构,系统项目分为三部分:用于表 

现层的Web项目;用于逻辑层的BLL项目;用于数据 

层的DALFactory(数据访问工厂类)、IDAL(数据访问 

接口类)、SQLServerDAL(数据访问类)、OracelDAL(数 

据访问类)、Model(业务实体类)项目。 

图2业务逻辑类、工厂类、数据库访问类交互图 

3 系统实现 

将负责处理用户信息的Account类在数据层 

和逻辑层中的实现方法介绍一下。 

(1)定义一个用于访问用户信息的接口和基 

本方法 

Namespace TelephoneShop.IDAL//数据访问接口项目 

 {

Public interface IAccount//用户数据访问接口 

{ 

AccountInfo SignIn(string userId,string pass— 

word).;//用户登录时,系统根据输入的用户名和密码得到 

该用户信息 

Namespace TelephoneShop、SQLServerDAL//实现Sql数 

据库操作的数据访问项目 

{ 

Public class Account:Iaccount//实现前面接口Iac— 

count声明的方法 

{ 

Public Accountlnfo SignIn(string userld,string pass— 

word){ 

……

//省略具体的操作数据代码 

Public void Insert(Accountlnfo account){ 

……

//省略具体的操作数据代码 

} 

Public void Update(Accountlnfo account){ 

……

//省略具体的操作数据代码 

} 

} 

} 

数据访问项目SQLServerDAL针对Sql数据库 

实现了对记录的添加、修改、删除操作。 

(3)创建一个工厂类DALFactory,用来识别用 

户建立应用的时候选择的是哪一种数据库。 

DALFactory把数据库识别信息从系统配置 

文件web.config中读出,为用户提供统一的接口, 

使用户不用过多关心这些。 

使用Sql数据库时配置文件中识别信息代码为: 

<add key=’’WebDAL”value=”TelephoneShop. 

SQLServerDAL’’> 

使用Oracle数据库时配置文件中识别信息代码为: 

<add key=”WebDAL”value=”TelephoneShop.Ora— 

cleDAL”> 

DALFactory项目会根据数据库识别信息选 

择相应的数据库 

Namespace TelephoneShop DALFactory{ 

Public class Account} 

Public static TelephoneShop.IDAL.Iaccount Create 

(){ 

//获取需要的数据访问类路径 

String path=System.Configuration.ConfiguarationSet— 

维普资讯

80 曾凯:基于ASP.NET的B2C手机电子商务网站设计与实现 总第221期 

tings.AppSettings[”WebDAL”]; 

Sting className=path+”.Account”:r 

据,所以要采取比较妥当的安全措施,首先防止数 

据被人任意改动,其次要防止数据库被非法访问。 

本商务网站系统设计了一些通用类,如输入处 

理类、异常处理类,当系统受到攻击时,应用程序可 

以通过这些类来处理危机。 

利用SQL Server等数据库与操作系统的安全 

集成功能,为系统的不同使用人员分配不同的访问 

权限和角色;同时也可以使用服务器组并且共享应 

用程序会话,可以保证在任意一台服务器坏了的时 

候不影响整个网站的正常运行;防火墙也可以最大 

限度地避免防火墙内部网络被非法入侵;加密一些 

//使用配置文件中给出的参数得到正确的的集合和 

类,返回指定的接口 

Return(TelephoneShop.IDAL.IAccount) 

Assembly.Load(path).CreateInstance(className); 

} 

} 

} 

系统将底层的处理封装在项目中,为逻辑层提 

供接口,使它能直接调用。 

(4)逻辑层调用接口的实例 

Namespace TelephoneShop.BLL{ 

Public class Account{ 

Public Accountlnfo SignIn(string userld,stirng pass— 

私有数据,做好数据库的备份和恢复。 

4 结语 

网站采用B/S模式的三层结构,用ASP.NET 

word){ 

//省略部分数据 

分布式多层系统架构,将网站分为不同层次。采用 

工厂设计模式,大大降低系统开发和维护的成本, 

提高系统模块的可复用性,使系统的可扩展性和通 

用性得到明显增强。 

参考文献 

//用DALFactory创建一个accountDAL实例 

IAccount dal=TelephoneShop.DALFactory.Account. 

create(); 

//使用得到的信息登录 

AccountInfo account=da1.SignIn(userId,password); 

//返回用户对象 

Return account; 

} 

} 

[1]章立民.用实例学ASP.NET(使用c#与ADO. 

NET)[M].北京:电子工业出版社,2004 

[2]黎晓冬,李华飚,王福水.精通ASP.NET编程 

[M].北京:科学出版社,2003 

[3]王永刚.浅谈工厂方法在ASP.NET网站设计中 

的应用[J].机电技术,2006,(3):23 

[4]夏阳.基于ASP.Net的电子商务网站开发与设计 

[J].计算机工程与设计,2004,25(11):20~27 

[5]葛建芳.基于ASP.Net电子商务网站的设计与实 

现[J].计算机与数字工程,2006,34(9):155 

[6]李玲.B2C电子商务网站的设计与实现[J].计 

算机与数字工程,2005,33(12):113 

} 

这样很好的实现了封装性和通用性。 

(5)数据库安全性设计 

数据库安全性是数据库系统的一个重要方面, 

它是指保护数据库防止被不合法的使用,包括恶意 

破坏和非法存取等。 

由于本系统的数据涉及到个人资料和商业数 

‘… … l-。。l¨l,。 ……。 ¨-.1¨… 。…… 。¨¨l-- ………¨’  …-… ‘。……… _--’¨¨|'‘ … …・。 ¨一…0…。 l,-.-¨●t.・。…¨ 

(上接第5页) 

[4]S.Z.Li.Content—Based Audio Classification and 

and enhancement using frame——synchronized fast wavelet pack— 

et transform algorithms[J].IEEE Transactions on Signal Pro— 

cessing,1999,47:(6)1622~1635 JUN 

Retireval Using the Nearest Feature Line Method[J].IEEE 

Transactions speech and audio processing,2000,8(5) 

[7]Wu XD,Li YM,Chen HY.Multi—domain speech 

compression based on wavelet packet transform[J].Electron— 

ics Letters,1998,34(2):154~155 

[5]Subramanya S R.Indexing and Searching Schemes 

For Audio Data in Audio/Multimedia Databases(Multimedia 

Datbasae)[J].Ph.D.dissertation,George Washington 

Univ.,in 1999 

[8]Coifman R R,Wiekerhauser M V.Entropy—Based 

Algorithms for Best Basis Selection[J].IEEE Transactions In— 

formation Theory,1992,38(2):713—718 

[6]Carnero B,Drygajlo A.Perceptual speech coding 

2024年5月13日发(作者:种陶宁)

维普资讯

总第221期 

2008年第3期 

计算机与数字工程 

Computer&Digital Engineering 

Vol_36 No.3 

77 

基于ASP.NET的B2C手机电子商务网站设计与实现 

曾 凯 

(天津市医药科学研究所

摘要

天津300020) 

介绍利用ASP.NET构建完整的B2C手机电子商务网站的方法,阐述网站的框架设计和功能实现。网站利用 

工厂设计模式,使系统结构更加精简,更具有封装性,降低系统开发和维护的成本,提高系统模块的可复用性,有利于ASP. 

NET网站的快速开发。 

关键词 电子商务

中图分类号

ASP.NET工厂设计模式 

TP312 

1 引言 

在信息时代的今天,建立一个功能强大、界面 

美观的手机电子商务网站,建立电子商务系统平 

台,对企业的发展是至关重要的。好处是减少中间 

品信息的增加、修改和删除功能。商品列表按照商 

品类别显示商品。商品列表可以显示商品缩略图, 

商品型号名称及价格。点击商品名称或商品缩略 

图可以进行商品详细信息页。点击购物车可以将 

此商品放人购物车以待结算。 

(3)用户管理模块。包括:增加、删除、修改用 

户信息。 

环节、降低库存,它使买卖双方在网上沟通、洽谈, 

提高工作效率,实现企业与电子商务网站双赢。 

利用最新的ASP.NET框架技术和ADO.NET 

(4)订单管理模块。包括:订单生成,历史订 

单查询、管理。顾客可进人订单浏览界面查看自己 

所有订单的纪录。可以看到订单编号,订单日期, 

订单总金额。点击显示详细信息可看到订单的具 

数据库技术开发手机电子商务网站是当前IT界的 

个重要系统开发方式。面对SQL和Oracle等多 

种数据库的开发环境,网站利用工厂设计模式,增 

加系统的可复用性和可维护性,延长使用寿命。 

体信息,即订单号、订单日期、产品名称、产品类别、 

数量、单价、总计、用户编号。 

(5)其他管理模块。为使网站更加完善,便于 

消费者和商家之间的交流和沟通而设置的。包括 

2 系统设计 

2.1 网站模块 

像淘宝网、卓越网、美国在线等成功的商务网 

站都具有功能强大、模块清晰、高效率、高安全性等 

特点。在参考成功网站的基础上,根据实际需求, 

建立手机电子商务网站。本网站是一个在线的手 

机购买系统,用户可以通过各种能够连接到Inter— 

广告管理、购物导航信息和问题反馈信息管理。 

2.2环境配置 

作为服务器的计算机上必须安装SQL Serv— 

er2000(或Oracle数据库)及更高版本,操作系统为 

Win2000/Xp,并安装.NET Framework2.0版本。 

2.3系统框架设计 

B2C手机电子商务网站采用三层架构,即表现 

层、逻辑层和数据层。 

(1)表现层,用于完成界面与最终用户交互的 

net的终端进行在线的手机购买。在细致分析、调 

研之后,将网站分为5大模块: 

(1)用户注册和登录模块。该模块用于记录 

和确认顾客身份。顾客要按要求输人相关项目才 

能成为本网站的注册用户,只有已注册的用户并登 

功能,在应用程序里面是一些aspx的页面和代码。 

包括:网站首页、用户注册和登录、浏览搜索商品信 

息、查看购物车、购物导航等页面。 

(2)逻辑层,用于封装商业逻辑和规则,在应 

录后,才能在线购买手机商品并生成订单。注册用 

户通过首页输人用户名和密码,登录网站。 

(2)商品管理模块。包括:商品浏览、查询,商 

收稿日期:2007年10月13日,修回日期:2007年11月27日 

作者简介:曾凯,男,助理工程师,研究方向:计算机与网络应用。 

维普资讯

78 曾凯:基于ASP.NET的B2C手机电子商务网站设计与实现 总第221期 

图1 手机电子商务网站的交易流程 

用程序里面被封装为.NET组件,是系统数据处理 

的最高层。它建立在数据层之上,同时又把表现层 

的功能抽象化,为表现层提供服务。包括:消费者 

按手机种类浏览商品、搜索商品,存入购物车,提交 

订单等功能。 

(3)数据层,数据访问通过逻辑层中的数据访 

问组件与SQL Server Provider交互,所有的数据获 

取依靠存储过程来进行,而不是通过SQL语句。 

应用程序通过该层访问数据库,对用户信息、商品 

信息、订单信息进行添加、修改、删除等操作。 

为增加整个系统的可复用性,降低子系统之问 

的耦合度,简化数据库访问类的使用,该系统在数 

据层上采用工厂设计模式。 

因为在实际使用中如果不采用工厂设计模式, 

就会经常遇到以下问题:(1)若访问新的数据库 

时,需增加具体类,修改逻辑层代码;(2)若增加同 

类的新产品时,需增加具体类,修改逻辑层代码; 

(3)在对源代码保密的情况下将系统移植给其他 

软件公司时,需重新修改数据层的具体类和逻辑层 

代码。这样做的缺点是代码冗长,可利用率低,工 

作效率低,可移值性差。 

工厂设计模式的概述:简单工厂方法思想为工 

厂方法做了引导。简单工厂方法是根据提供给它 

的数据,返回几个可能类中的一个类的实例,通常 

返回的类都有一个共同的父类和共同的方法。也 

就是简单工厂能返回具有同样方法的类的实例。 

它的缺点是由于工厂类集中了所有产品创建逻辑, 

如果不能正常工作的话会对系统造成很大的影响。 

如果增加新产品必须修改工厂角色的源码。而工 

厂模式的设计对简单工厂方法进行了延伸。 

简单工厂只有一个工厂类,而工厂设计模式是 

类的创建模式,又叫做虚拟构造子模式或多态性工 

厂模式。它的用意是定义一个创建产品对象的工 

厂接口,将实际创建工作推迟到子类中。在工厂设 

计模式中,核心的工厂类不再负责所有的产品的创 

建,而是将创建的工作交给子类去做。这个核心类 

成为一个抽象工厂的角色,仅负责给出具体工厂子 

类必须实现的接口,而不接触哪一个产品类实例化 

的细节。这使得工厂设计模式可以允许系统在不 

修改具体工厂角色的情况下引进新的产品,使其具 

有超越简单工厂模式的优越性。 

工厂设计模式的优点主要有三点: 

(1)分离了具体的类。抽象工厂模式帮助你 

控制一个应用创建的对象的类,因为一个工厂封装 

创建产品对象的责任和过程。它将客户和类的实 

现分离,客户通过他们的抽象接口操纵实例,产品 

的类名也在具体工厂的实现中被分离,它们不出现 

在客户代码中。 

(2)它使得易于交换产品系列。一个具体工 

厂类在一个应用中仅出现一次一即在它初始化的 

时候。这使得改变一个应用的具体工厂变得很容 

易。它只需改变具体的工厂即可使用不同的产品 

配置,这是因为一个抽象工厂创建了一个完整的产 

品系列,所以整个产品系列会立刻改变。 

(3)它有利于产品的一致性。当一个系列的 

产品对象被设计成一起工作时,一个应用一次只能 

使用同一个系列中的对象,这一点很重要,而抽象 

工厂很容易实现这一点。 

在基于ASP.NET的手机电子商务网站中工厂 

设计模式的思路:考虑到数据库访问的问题。如访 

问SQL数据库或Oracle数据库,应该分别导人数 

据访问项目SQLServerDAL和OracelDAL,进而采 

用不同的访问方法。 

为了在数据库变化时,不影响到逻辑层的代 

码,系统对数据库的访问项目进行了再封装,不仅 

实现代码与数据库平台分离,还达到精简代码的目 

的。那么面对多种数据库,可以先定义一个访问数 

维普资讯

第36卷(2008)第3期 计算机与数字工程 79 

据库的接口,然后针对不同的数据库,让工厂类决 

定调用哪个数据库。这正是工厂方法的设计应用。 

工厂设计模式的实现方式为:创建一个作为接口 

Void Insert(AccountInfo account);//将新添的用 

户信息account存人数据库 

Void Update(Accountlnfo account);//根据account 

的IDAL项目,它只有定义,其真正的实现是在数据访 

问项目SQLServerDAL和OracelDAL中编写。 

修改用户信息 

} 

为支持运行时确定加载哪一个具体类 

(SQLServerDAL或OracelDAL),需要创建工厂类,它 

从配置文件web.config中读入一个值以确定应该使 

IDAL接口项目只是声明一系列方法,而具体的实现细 

节由数据访问项目完成。 

(2)为Sql数据库编写相应的数据访问项目 

用反射加载哪一个程序集,通过.Net的反射命名空 

间,可以加载某个特定程序集并用该程序集创建某个 

对象的实例。数据层的这种实现方式优势是如果创 

建应用程序的第二个版本或使用新的数据库时,就不 

需改动作为业务逻辑层的BLL项目。 

根据这三层架构,系统项目分为三部分:用于表 

现层的Web项目;用于逻辑层的BLL项目;用于数据 

层的DALFactory(数据访问工厂类)、IDAL(数据访问 

接口类)、SQLServerDAL(数据访问类)、OracelDAL(数 

据访问类)、Model(业务实体类)项目。 

图2业务逻辑类、工厂类、数据库访问类交互图 

3 系统实现 

将负责处理用户信息的Account类在数据层 

和逻辑层中的实现方法介绍一下。 

(1)定义一个用于访问用户信息的接口和基 

本方法 

Namespace TelephoneShop.IDAL//数据访问接口项目 

 {

Public interface IAccount//用户数据访问接口 

{ 

AccountInfo SignIn(string userId,string pass— 

word).;//用户登录时,系统根据输入的用户名和密码得到 

该用户信息 

Namespace TelephoneShop、SQLServerDAL//实现Sql数 

据库操作的数据访问项目 

{ 

Public class Account:Iaccount//实现前面接口Iac— 

count声明的方法 

{ 

Public Accountlnfo SignIn(string userld,string pass— 

word){ 

……

//省略具体的操作数据代码 

Public void Insert(Accountlnfo account){ 

……

//省略具体的操作数据代码 

} 

Public void Update(Accountlnfo account){ 

……

//省略具体的操作数据代码 

} 

} 

} 

数据访问项目SQLServerDAL针对Sql数据库 

实现了对记录的添加、修改、删除操作。 

(3)创建一个工厂类DALFactory,用来识别用 

户建立应用的时候选择的是哪一种数据库。 

DALFactory把数据库识别信息从系统配置 

文件web.config中读出,为用户提供统一的接口, 

使用户不用过多关心这些。 

使用Sql数据库时配置文件中识别信息代码为: 

<add key=’’WebDAL”value=”TelephoneShop. 

SQLServerDAL’’> 

使用Oracle数据库时配置文件中识别信息代码为: 

<add key=”WebDAL”value=”TelephoneShop.Ora— 

cleDAL”> 

DALFactory项目会根据数据库识别信息选 

择相应的数据库 

Namespace TelephoneShop DALFactory{ 

Public class Account} 

Public static TelephoneShop.IDAL.Iaccount Create 

(){ 

//获取需要的数据访问类路径 

String path=System.Configuration.ConfiguarationSet— 

维普资讯

80 曾凯:基于ASP.NET的B2C手机电子商务网站设计与实现 总第221期 

tings.AppSettings[”WebDAL”]; 

Sting className=path+”.Account”:r 

据,所以要采取比较妥当的安全措施,首先防止数 

据被人任意改动,其次要防止数据库被非法访问。 

本商务网站系统设计了一些通用类,如输入处 

理类、异常处理类,当系统受到攻击时,应用程序可 

以通过这些类来处理危机。 

利用SQL Server等数据库与操作系统的安全 

集成功能,为系统的不同使用人员分配不同的访问 

权限和角色;同时也可以使用服务器组并且共享应 

用程序会话,可以保证在任意一台服务器坏了的时 

候不影响整个网站的正常运行;防火墙也可以最大 

限度地避免防火墙内部网络被非法入侵;加密一些 

//使用配置文件中给出的参数得到正确的的集合和 

类,返回指定的接口 

Return(TelephoneShop.IDAL.IAccount) 

Assembly.Load(path).CreateInstance(className); 

} 

} 

} 

系统将底层的处理封装在项目中,为逻辑层提 

供接口,使它能直接调用。 

(4)逻辑层调用接口的实例 

Namespace TelephoneShop.BLL{ 

Public class Account{ 

Public Accountlnfo SignIn(string userld,stirng pass— 

私有数据,做好数据库的备份和恢复。 

4 结语 

网站采用B/S模式的三层结构,用ASP.NET 

word){ 

//省略部分数据 

分布式多层系统架构,将网站分为不同层次。采用 

工厂设计模式,大大降低系统开发和维护的成本, 

提高系统模块的可复用性,使系统的可扩展性和通 

用性得到明显增强。 

参考文献 

//用DALFactory创建一个accountDAL实例 

IAccount dal=TelephoneShop.DALFactory.Account. 

create(); 

//使用得到的信息登录 

AccountInfo account=da1.SignIn(userId,password); 

//返回用户对象 

Return account; 

} 

} 

[1]章立民.用实例学ASP.NET(使用c#与ADO. 

NET)[M].北京:电子工业出版社,2004 

[2]黎晓冬,李华飚,王福水.精通ASP.NET编程 

[M].北京:科学出版社,2003 

[3]王永刚.浅谈工厂方法在ASP.NET网站设计中 

的应用[J].机电技术,2006,(3):23 

[4]夏阳.基于ASP.Net的电子商务网站开发与设计 

[J].计算机工程与设计,2004,25(11):20~27 

[5]葛建芳.基于ASP.Net电子商务网站的设计与实 

现[J].计算机与数字工程,2006,34(9):155 

[6]李玲.B2C电子商务网站的设计与实现[J].计 

算机与数字工程,2005,33(12):113 

} 

这样很好的实现了封装性和通用性。 

(5)数据库安全性设计 

数据库安全性是数据库系统的一个重要方面, 

它是指保护数据库防止被不合法的使用,包括恶意 

破坏和非法存取等。 

由于本系统的数据涉及到个人资料和商业数 

‘… … l-。。l¨l,。 ……。 ¨-.1¨… 。…… 。¨¨l-- ………¨’  …-… ‘。……… _--’¨¨|'‘ … …・。 ¨一…0…。 l,-.-¨●t.・。…¨ 

(上接第5页) 

[4]S.Z.Li.Content—Based Audio Classification and 

and enhancement using frame——synchronized fast wavelet pack— 

et transform algorithms[J].IEEE Transactions on Signal Pro— 

cessing,1999,47:(6)1622~1635 JUN 

Retireval Using the Nearest Feature Line Method[J].IEEE 

Transactions speech and audio processing,2000,8(5) 

[7]Wu XD,Li YM,Chen HY.Multi—domain speech 

compression based on wavelet packet transform[J].Electron— 

ics Letters,1998,34(2):154~155 

[5]Subramanya S R.Indexing and Searching Schemes 

For Audio Data in Audio/Multimedia Databases(Multimedia 

Datbasae)[J].Ph.D.dissertation,George Washington 

Univ.,in 1999 

[8]Coifman R R,Wiekerhauser M V.Entropy—Based 

Algorithms for Best Basis Selection[J].IEEE Transactions In— 

formation Theory,1992,38(2):713—718 

[6]Carnero B,Drygajlo A.Perceptual speech coding 

发布评论

评论列表 (0)

  1. 暂无评论