admin 管理员组

文章数量: 887609


2024年1月11日发(作者:一个小说网站的html模板)

第1题

案例题

阅读以下关于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)SpringJdbcTemplate

(d)TopLink,JDO,Hibernate

【解析】 正确答案:【问题1】

数据持久层是一组软件服务,将应用程序与该程序所使用的数据源分离,为整个项目提供一个统一、安全、并发的数据持久机制。

好处:

1、程序代码重用性强,即使更换数据库,只需要更改配置文件,不必重写程序代码。

2、业务逻辑代码可读性强,在代码中不会有大量的SQL语言,提高程序的可读性。

3、持久化技术可以自动优化,以减少对数据库的访问量,提高程序运行效率。

4、简化开发工作,让开发人员更关注于业务逻辑的开发。

5、通过对象/关系映射向业务逻辑提供面向对象的数据访问。

【问题2】

1、项目组应选Hibernate框架

2、选择该技术的原因是:

(1)从移植的角度来看使用Hibernate更容易移植到其它数据库平台。

Hibernate与具体数据库的关联只需在XML文件中配置即可,所有的HQL语句与具体使用的数据库无关,移植性很好。MyBatis项目中所有的SQL语句都是依赖所用的数据库的,所以不同数据库类型的支持不好。

(2)使用Hibernate能降低或者消除SQL语句开发工作量, Hibernate 提供了方法完成持久层操作,程序员不需要对SQL 的熟练掌握,便可完成任务。

(3)Hibernate提供了对象状态管理的功能,使开发者不再需要理会底层数据库系统的细节,而MyBatis在这一块没有文档说明,用户需要对对象自己进行详细的管理。

【问题3】

(1) (c)

(2) (b)

(3) (d)


本文标签: 数据 开发 需要