首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库
admin
2019-02-25
50
问题
某制造企业为拓展网上销售业务,委托某软件企业开发一套电子商务网站。初期仅解决基本的网上销售、订单等功能需求。该软件企业很快决定基于NET平台和SQL Server数据库进行开发,但在数据库访问方式上出现了争议。王工认为应该采用程序在线访问的方式访问数据库;而李工认为本企业内部程序员缺乏数据库开发经验,而且应用简单,应该采用ORM(对象关系映射)方式。最终经过综合考虑,该软件企业采用了李工的建议。
随着业务的发展,该电子商务网站逐渐发展成一个通用的电子商务平台,销售多家制造企业的产品,电子商务平台的功能也日益复杂。目前急需对该电子商务网站进行改造,以支持对多种异构数据库平台的数据访问,同时满足复杂的数据管理需求。该软件企业针对上述需求,对电子商务网站的架构进行了重新设计,新增加了数据访问层,同时采用工厂设计模式解决异构数据库访问的问题。新设计的系统架构如图4—1所示。
应用程序设计中,数据库访问需要良好的封装性和可维护性,因此经常使用工厂设计模式来实现对数据库访问的封装。请解释工厂设计模式,并说明其优点和应用场景;请解释说明工厂模式在数据访问层中的应用。
选项
答案
工厂设计模式定义了创建对象的接口,允许子类决定实例化哪个类,而且允许请求者无须知道要被实例化的特定类,这样可以在不修改代码的情况下引入新类。 优点是(1)没有了将应用程序类绑定到代码中的要求,可以使用任何实现了接口的类;(2)允许子类提供对象的扩展版本。 工厂设计模式的应用场景有:(1)类不能预料它必须创建的对象的类;(2)类希望其子类指定它要创建的对象。 在数据访问层定义采用工程模式,定义统一的操纵数据库的接口,然后根据数据库的不同,由类工厂来决定实例化哪个类。在具体类中实现特定的数据库访问类。这样,就可以实现由客户端指定或根据配置文件来选择访问不同的数据库,从而实现应用程序与数据库无关。
解析
在应用程序设计中,需要对数据库访问进行良好的封装,使其具有良好的可维护性,尽量使得应用程序与数据库无关。本题中,应用系统需要访问异构数据源,在应用程序中会存在多种数据访问接口。因此在实际开发中,需要对这些访问接口再做一次封装,这样可以减少操作数据库的步骤,减少代码编写量。工厂设计模式是使用的主要方法。
工厂设计模式定义了创建对象的接口,允许子类决定实例化哪个类,而且允许请求者无须知道要被实例化的特定类,这样可以在不修改代码的情况下引入新类。优点是:没有了将应用程序类绑定到代码中的要求,可以使用任何实现了接口的类;允许子类提供对象的扩展版本。工厂设计模式的应用场景有:类不能预料它必须创建的对象的类,类希望其子类指定它要创建的对象。
在数据访问层定义采用工程模式,定义统一的操纵数据库的接口,然后根据数据库的不同,由类工厂来决定实例化哪个类。在具体类中实现特定的数据库访问类。这样,就可以实现由客户端指定或根据配置文件来选择访问不同的数据库,从而实现应用程序与数据库无关。
转载请注明原文地址:https://kaotiyun.com/show/CAQZ777K
本试题收录于:
系统架构师下午案例分析考试题库软考高级分类
0
系统架构师下午案例分析考试
软考高级
相关试题推荐
Brothersandsistersfight,butwhenthebickeringevolvesintophysicaloremotionalabuse,it’sbullying.Ordinaryargumentso
Brothersandsistersfight,butwhenthebickeringevolvesintophysicaloremotionalabuse,it’sbullying.Ordinaryargumentso
输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。例如输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果:因此返回true。如果输入7、4、6、5,没有哪棵树的后序遍历
已知一台计算机名字为bob,搜索该计算机。
添加一个新的类型是计算机管理员的用户John
在OutlookExpress中,请安接收时间的升序方式将所有邮件重新排序。
清空地址栏列表框中的内容。
在即时通讯工具MSN中,从当前界面开始,把自己的邮箱注册为“Passport”,已知邮箱地址为:ccty@163.com,密码设置为116116,密码提示问题为:你最喜欢的历史人物?毛泽东,注册检查框内的字符按照图片上给的输入,字符输入区分大小写,其余选项
Therearecommoncloudcomputingservicemodels.______usuallyrequirescompaniestodeploytheirownoperatingsystems,applica
CPUsandoperatingsystemscanworkintwomaintypesofmultitaskingmodes.Whatcontrolsaccessandtheuseofsystemresource
随机试题
在行政管理学中,行政管理行为主要有()
A.桃仁红花煎加减B.安神定志丸加琥珀、磁石、朱砂C.归脾汤加减D.苓桂术甘汤加减E.桂枝甘草龙骨牡蛎汤加味水饮凌心型心悸应首选的方剂是
影响土地利用的社会构成状况主要表现在人口数量上。()
某施工单位编制的某工程网络图,如图3-1所示,网络进度计划原始方案各工作的持续时间和估计费用,见表3-1。若该网络进度计划各工作的可压缩时间及压缩单位时间增加的费用,见表3-2。确定该网络进度计划的最低综合费用和相应的关键线路,并计算调整优化后的总工
案例:中(2)班的张老师正在组织幼儿开展美术活动,活动室外突然飘起了雪花。这对于南方的幼儿来讲是非常稀奇的,很多幼儿很少甚至从未见过真实的下雪的情景。因此,不少幼儿开始按捺不住激动的心情,不时往外张望,甚至有个别幼儿已经离开座位跑到了活动室外。张老师看到
保镖:人
用测谎仪测谎通常使用的生理指标有
在微型计算机中,唯一能够直接识别和执行的语言是()。
在某Cisco路由器上使用命令“snmp-serverhost202.113.77.5system”进行SNMP设置,如果在管理站202.113.77.5上能够正常接收来自该路由器的通知,那么下列描述中错误的是()。
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串中后面的字符删除,只保留前面的k个字符。ss所指字符串数
最新回复
(
0
)