第1题:
从功能上讲,数据库应用系统设计包括下列四个层次,其中包括构件设计的是( )。
A.表示层
B.业务逻辑层
C.数据访问层
D.数据持久层
第2题:
A.表示层
B.业务逻辑层
C.数据访问层
D.数据持久层
第3题:
论企业应用系统的数据持久层架构设计 数据持久层(Data Persistence Layer)通常位于企业应用系统的业务逻辑层和数据源层之间,为整个项目提供一个高层、统一、安全、并发的数据持久机制,完成对各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务。它能够使程序员避免手工编写访问数据源的方法,使其专注于业务逻辑的开发,并且能够在不同项目中重用本框架,这大大简化了数据的增加、删除、修改、查询功能的开发过程,同时又不丧失多层结构的天然优势,继承延续应用系统架构的可伸缩性和可扩展性。当运用关系型数据库作为数据存储机制时,在业务层与数据源间加入数据持久层,能够解决对象与关系的“阻抗不匹配”问题,将对象的状态持久化存储到关系型数据库中。
请围绕“企业应用系统的数据持久层架构设计”论题,依次从以下三方面进行论述。 1.概要叙述你参与分析和设计的企业应用系统开发项目以及你所担任的主要工作。 2.分析在企业应用系统的数据持久层架构设计中有哪些数据访问模式,并详细阐述每种数据访问模式的主要内容。 3.数据持久层架构设计的好坏决定着应用程序性能的优劣,请结合实际说明在数据持久层架构设计中需要考虑哪些问题。
一、简要描述所参与分析和设计的企业应用系统开发项目,并明确指出在其中承担的主要任务和开展的主要工作。
二、分析在企业应用系统的数据持久层架构设计中有哪些数据访问模式,并详细阐述每种数据访问模式的主要内容。
企业应用系统的数据持久层架构设计中主要有五种数据访问模式:
(1)在线访问(Online Access)。OA是最基本的数据访问模式,也是在实际开发过程中最常采用的。这种数据访问模式会占用一个数据库连接,读取数据,每个数据库操作都会通过这个连接不断地与后台的数据源进行交互。
(2)数据访问对象(Data Access Object)。DAO模式是标准的J2EE设计模式之一,开发人员常常用这种模式将底层数据访问操作与高层业务逻辑分离开。一个典型的DAO实现通常包括:一个DAO工程类;一个DAO接口;一个实现了DAO接口的具体类,包含访问特殊数据源中数据的逻辑;数据传输对象。
(3)数据传输对象(Data Transfer Object)。DTO是经典EJB设计模式之一,它本身是一组对象或者数据的容器,需要跨越不同的进程或者网络的边界来传输数据。对象本身应该不包含具体的业务逻辑,并且通常这些对象内部职能进行一些诸如内部一致性检查和基本验证之类的方法,而且这些方法最好不要再调用其他的对象行为。在具体实现DTO时,可以使用编程语言内置的集合对象,也可以通过创建自定义类来实现DTO对象。
(4)离线数据模型(Off-line Data Model)。ODM以数据为中心,数据从数据源获取之后,将按照某种预定义的结构存放在系统中,成为应用的中心。离线方式可以使得对数据的各种操作独立于各种与后台数据源之间的连接或者事务;通过与XML集成数据可以方便地与XML格式的文档之间相互转换;独立于数据源,ODM定义了数据的存储结构和规则。
(5)对象关系映射(Object Relational Mapping)。ORM是随着面向对象软件开发方法发展而产生的,面向对象开发方法是主流的开发方法,关系型数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。ORM一般以中间件的形式存在,能够帮助将应用程序中的数据转换成关系型数据库中的记录;或者将关系数据库中的记录转换成应用程序中便于操作的对象。
三、数据持久层架构设计的好坏决定着应用程序性能的优劣,无论在C/S,还是在B/S结构中,持久层在处理数据的同时,对服务器锁的类型和持续时间、输入输出活动量以及处理器负荷等产生主要影响,并由此影响应用程序的总体性能。在持久层设计阶段需要考虑的问题包括:网络流量问题;返回结果集的问题;查询或锁定超时的问题;应用程序开发工具的问题;使用游标的问题;应用层设计的问题等。
第4题:
第5题:
第6题:
从功能上讲,数据库应用系统设计包括四个层次。下列层次中包含索引设计的是( )。
A.表示层
B.业务逻辑层
C.数据访问层
D.数据持久层
第7题:
阅读以下关于Web应用系统架构设计的叙述,在答题纸上回答问题1至问题3. 【说明】 某信息技术公司计划开发一套在线投票系统,用于为市场调研、信息调查和销售反馈等业务提供服务。该系统计划通过大量宣传和奖品鼓励的方式快速积累用户,当用户规模扩大到一定程度时,开始联系相关企业提供信息服务,并按照信息服务种类和用户投票数量收取费用。 为了降低开发成本和提高开发效率,项目组经过讨论后决定采用轻量级Java EE开发框架设计系统应用架构。在应用架构设计中,除了满足系统主要功能需求,还需要考虑的因素包括: (1)项目开发采用MySQL数据库存储数据,一但将来可能移植到其它数据库平台; (2)系统开发过程中尽可能降低或者消除SQL语句开发的工作量; (3)投票系统中数据之间的关系复杂,需要支持数据对象的聚合和继承等关系。 项目组基于MVC模式设计出了投票系统的架构,包括表示层、业务逻辑层、数据持久层和数据层。在具体讨论数据持久层采用哪种技术方案时,老王建议采用成熟的Hibernate框架,小李则认为iBatis更加灵活,更适合作为投票系统数据持久层开发技术。
【问题1)(5分) 请用300以内文字说明什么是数据持久层,使用数据持久层能够为项目开发带来哪些好处? 【问题2】(12分) 针对在线投票系统的实际应用需求和要求,项目组应选用哪种技术实现数据持久层?请用200字以内文字说明其采用该技术的原因。 【问题3】(8分) 数据持久层是Web应用系统框架中重要的组成部分,主流的数据持久层技术分别基于不同的技术方案,请在表5-1中(1)-(4)处分别根据(a)~(d)所列技术的方案类别填入其序号。 表5-1 数据持久层技术分类(a) BMP, CMP (b)iBatis/MyBatis (c)SprmgJdbcTemplate (d)TopLink,JDO,Hibernate
第8题:
A、接入层
B、业务逻辑层
C、数据访问层
D、持久化层
第9题:
第10题:
一般的web应用逻辑上分为哪三层?()