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