毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
J2EE基于Web实现公共信息和资料的发布管理和控制(5)
(2)允许多种视图对应一个模型,可以很方便地用多个视图来显示多套数据,而模型层的处理则是一致的,从而使系统能方便地支持其它新的客户端类型。
(3)当三层间的接口设计完成以后,就可以开展并行开发,从而有利于软件工程化管理,提高开发效率。
(4)MVC模式中各部分的责任划分得很清楚,从而简化了测试工作,文护人员很容易了解程序的结构,便于文护工作的进行;同时各组件的分界线就是分发接口点,使得应用程序的发布更容易,并且支持渐进式升级。同时,使用MVC开发模式也有一些不足之处:
(1)增加了系统结构和实现的复杂性。对于简单的系统,严格遵循MVC模式,使模型、视图与控制器分离,会增加系统的复杂性,降低开发效率。
(2)视图与控制器间的过于紧密的连接。视图与控制器是相互分离,但也确实是联系紧密的部件,视图没有控制器的存在,其应用是很有限的,反之亦然,这样就妨碍了它们的独立重用。
(3)视图对模型数据的低效率访问。实际处理中,视图可能需要多次调用模型层中的操作才能获得足够的显示数据,而对未变化数据的不必要的频繁访问和更新操作,也将降低运行效率,损害操作性能。
2.3 模型层
系统中所有的具体业务逻辑操作以及对数据库的存取操作都属于模型层。在实际开发中,通常把逻辑处理中相对独立的业务逻辑操作封装成JavaBean类,由控制层中的功能模块调用,把对数据库表的操作封装成相应的DAO类,供其它模块调用,这些类之间的相互协作实现了系统的逻辑处理功能。如果将这些对象间的依赖关系以编码的形式写入类中,会造成系统模块间的紧耦合,不利于系统的扩展和调试,因此引入Spring框架的IoC容器,对模型层中的类进行管理,实现模块间的解耦。
模型层中很重要的一个方面就是对象数据的持久化工作,对数据库的访问是模型层处理的重要组成部分。通过第二章的介绍可知,如果采用普通的JDBC API访问数据库,将大大增加Java代码量,不符合面向对象的程序设计思想,且Java代码与SQL语句的混编不便于程序的修改和阅读。为此,在模型层处理中引入Mybatis框架,负责数据的持久化处理。Mybatis是目前最流行的持久层框架之一,也是事实上的ORM标准。通过它,开发人员可以使用面向对象的操作方式访问数据库记录,大大简化数据库的操作。同时,它也能和Spring框架天然的集成在一起使用。
因此,本框架在模型层的设计中主要采用Spring+Mybatis实现,主要通过Spring的IoC容器对模型层中的类对象进行管理,实现对象间的解耦。此外,使用Mybatis框架实现数据持久化工作,从而方便数据库的操作和移植。
在模型层的实现中,要把封装了具体业务逻辑操作的JavaBean委托给Spring的IoC容器进行管理。其实现方式较简单,在Spring的配置文件中声明要使用的Bean元素即可,其中需要设置与其它类的依赖关系,以便IoC容器在运行时动态注入所需对象。
此外,本框架采用MyBatis实现对数据库的访问,完成对象的持久化工作。为此需要配置MyBatis使用的DataSource、SessionFactory等资源。Spring允许用户在其配置文件中以Bean的方式定义MyBatis使用的JDBC DataSource等数据访问资源。
以上配置信息中,使用class参数指定要创建数据源类型,本例中使用Apache的DBCP数据源,Hibernate还支持C3P0等多种数据源。driverClassName参数指定数据源使用的驱动程序,本例使用SQL Server的驱动,url参数指定连接数据库服务器的URL地址。username和password指定了数据库的用户名和密码。
共7页:
上一页
1
2
3
4
5
6
7
下一页
上一篇:
基于源搜索引擎的图片搜索研究
下一篇:
Web代理服务器的设计与实现
基于android的环境信息管理系统设计
基于激光超声检测金属材...
基于MOODLE平台的在线交互式学习设计
基于离散事件系统Petri网模型的可达图研究
基于高斯过程动态模型的时序数据恢复方法
基于深度学习的目标识别算法研究
MATLAB基于流形学习与神经网络的预测建模
从政策角度谈黑龙江對俄...
酵母菌发酵生产天然香料...
浅谈高校行政管理人员的...
浅论职工思想政治工作茬...
压疮高危人群的标准化中...
基于Joomla平台的计算机学院网站设计与开发
STC89C52单片机NRF24L01的无线病房呼叫系统设计
上海居民的社会参与研究
AES算法GPU协处理下分组加...
提高教育质量,构建大學生...