首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库
admin
2019-02-25
18
问题
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库;而李工认为本企业内部程序员缺乏数据库开发经验,而且应用简单,应该采用ORM(对象关系映射)方式。最终经过综合考虑,该软件企业采用了李工的建议。
随着业务的发展,该电子商务网站逐渐发展成一个通用的电子商务平台,销售多家制造企业的产品,电子商务平台的功能也日益复杂。目前急需对该电子商务网站进行改造,以支持对多种异构数据库平台的数据访问,同时满足复杂的数据管理需求。该软件企业针对上述需求,对电子商务网站的架构进行了重新设计,新增加了数据访问层,同时采用工厂设计模式解决异构数据库访问的问题。新设计的系统架构如图4—1所示。
应用程序设计中,数据库访问需要良好的封装性和可维护性,因此经常使用工厂设计模式来实现对数据库访问的封装。请解释工厂设计模式,并说明其优点和应用场景;请解释说明工厂模式在数据访问层中的应用。
选项
答案
工厂设计模式定义了创建对象的接口,允许子类决定实例化哪个类,而且允许请求者无须知道要被实例化的特定类,这样可以在不修改代码的情况下引入新类。 优点是(1)没有了将应用程序类绑定到代码中的要求,可以使用任何实现了接口的类;(2)允许子类提供对象的扩展版本。 工厂设计模式的应用场景有:(1)类不能预料它必须创建的对象的类;(2)类希望其子类指定它要创建的对象。 在数据访问层定义采用工程模式,定义统一的操纵数据库的接口,然后根据数据库的不同,由类工厂来决定实例化哪个类。在具体类中实现特定的数据库访问类。这样,就可以实现由客户端指定或根据配置文件来选择访问不同的数据库,从而实现应用程序与数据库无关。
解析
在应用程序设计中,需要对数据库访问进行良好的封装,使其具有良好的可维护性,尽量使得应用程序与数据库无关。本题中,应用系统需要访问异构数据源,在应用程序中会存在多种数据访问接口。因此在实际开发中,需要对这些访问接口再做一次封装,这样可以减少操作数据库的步骤,减少代码编写量。工厂设计模式是使用的主要方法。
工厂设计模式定义了创建对象的接口,允许子类决定实例化哪个类,而且允许请求者无须知道要被实例化的特定类,这样可以在不修改代码的情况下引入新类。优点是:没有了将应用程序类绑定到代码中的要求,可以使用任何实现了接口的类;允许子类提供对象的扩展版本。工厂设计模式的应用场景有:类不能预料它必须创建的对象的类,类希望其子类指定它要创建的对象。
在数据访问层定义采用工程模式,定义统一的操纵数据库的接口,然后根据数据库的不同,由类工厂来决定实例化哪个类。在具体类中实现特定的数据库访问类。这样,就可以实现由客户端指定或根据配置文件来选择访问不同的数据库,从而实现应用程序与数据库无关。
转载请注明原文地址:https://kaotiyun.com/show/CAQZ777K
本试题收录于:
系统架构师下午案例分析考试题库软考高级分类
0
系统架构师下午案例分析考试
软考高级
相关试题推荐
Writealetterofabout100wordstothepresidentofyouruniversity,suggestinghowtoimprovestudents’physicalcondition.
.什么是code-behind技术
列举一下你所了解的XML技术及其应用
概述.NET里对remoting和webservice两项技术的理解和实际中的应用。
在OutlookExpress中,请安接收时间的升序方式将所有邮件重新排序。
在用户管理组administrators中删除lusi用户。
在金山毒霸2008中,设置可疑文件在被清除前备份至病毒隔离系统。
ISO/IEC27000ispartofagrowingfamilyofISO/IECinformationsecuritymanagementsystems(ISMS)standards.Itcomprisesinfo
Therearemanytypesofvirusesthathackerscanusetodamagesystems.Whichofthefollowingisnotacorrectdescriptionofa
Thereareseveraltypesofintrusiondetectionsystems(IDSs).WhattypeofIDSbuildsaprofileofanenvironment’snormalacti
随机试题
纵向弛豫时间是指90°脉冲后,纵向磁化矢量恢复到原来的多少所经历的时间
代谢性酸中毒最突出的表现是
会计职业道德教育不包括对潜在会计人员进行的有目的、有计划、有组织的道德教育活动。()
垄断企业是价格制定者,是因为()。
对语词概括的各种有组织的知识的记忆叫()。
在行政诉讼中。人民法院实施下列哪一行为须征得原告同意?()
根据我国宪法,乡、民族乡、镇的人民代表大会每届任期几年?()
某国家领导人要在连续6天(分别编号为第一天,第二天,……,第六天)内视察6座工厂F、G、H、J、Q和R,每天只视察一座工厂,每座工厂只被视察一次。视察时间的安排必须符合下列条件:(1)视察F在第一天或第六天。(2)视察J的日子比视察Q的日子早。(3)
局域网指较小地域范围内的计算机网络,一般是一幢建筑物内的计算机互联成网。下面关于以太局域网的叙述中,错误的是()。
Readthistextaboutthegrowingdemandforconsultants,takenfromabusinessmagazine.Choosethebestsentencefromtheop
最新回复
(
0
)