- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于设计模式的通用数据库访问研究及应用
摘要:在大型企业应用软件系统开发中,常需面对不同类型数据源,由于异类数据源的访问机制不同,异类数据源的存在给程序开发和维护带来困难。为解决该问题,设计一基于设计模式的通用数据层访问组件模型,文中以系统重构前后如何适应多数据库为例进行说明。
关键词:重构;MVC架构;DAO模型;设计模式
中图分类号:TP311文献标识码:A文章编号:1009-3044(2011)07-1503-04
Research and Application of General Database Access on Design Patterns
ZOU Guan-hui, LONG Jun
(School of Information Science and Engineering, Central South University, Changsha 410083, China)
Abstract: We often deal with problem of different type data sources when design a enterprising application, which brings a lot of troubles to the development and maintenance of system because of different data sources have different access mechanism. A general data layer component model was designed and implemented in patter model.
Key words: refactor; Model/View/Controller; DAO model; design pattern
1 概述
企业有一05年度开发的管理系统,当时采用JSP+JavaBean架构,因受个人能力有限,虽然实现了逻辑功能和显示功能的分离,但是由于视图层和控制层都是由JSP页面实现的,即视图层和控制层没有实现分离,仍属于传统Model1模式,不符和MVC开发原则。因该软件目前整体运行情况良好,满足企业需求,想在不改变软件行为的前提下,对软件内部结构及代码进行重构,使管理系统符合J2EE技术标准,提高代码其可阅读性,实现软件更大粒度的复用。
因重构内容较多(涉及到UI层,业务逻辑层,数据持久层、域对象层等内容),现仅以系统重构前后如何适应多数据库为例进行说明。
2 旧系统数据库连接简介
系统数据库连接方式采用数据库厂商提供的专用驱动程序,通过JDBC API调用转换为直接网络调用,实现数据库连接,个人认为这种调用方式一般性能比较好,而且也是实用中最简单的方法。
为适应多数据库访问,旧系统实现原理:应用程序(javabean、SEVLET等)―读取配置文件-JDBC API驱动程序-访问数据库(MYSQL、SQL2000);
2.1 读取perty配置文件,获得数据库连接信息 (Property文件内容见下)
DBType=0 //dbtype值代表数据库类型:0为MYSQL,1为ORACLE
MySQLDriver=org.gjt.mm.mysql.Driver
MySQLURL=jdbc:mysql://localhost:3306/databasename?userpassword…
………
AccessDriver=sun.jdbc.odbc.JdbcOdbcDriver
AccessURL=jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)}
AccessPath=D:/eclipse/workspace/news/……databasename
……………
2.2 根据读取DBType值来判断数据库连接类型
switch(DBType)
{
case 0:return(getConnToMySql ());
case 1:return(getConnToOracle());
……………
default:return null;
}
2.3 调用API函数建立数据库连接
private Connection getConnToMySql(){
StringSqlDriver = getPara(MySQLDriver );//配置文件返回值
StringsqlURL = getPara(
您可能关注的文档
最近下载
- T∕CACM 1066.2-2018 中医治未病标准化工作指南 第2部分:标准体系.docx VIP
- 技术服务措施及保障措施方案.docx VIP
- 新媒体环境下的微博营销【文献综述】.doc VIP
- 2021钻床工考试-初级钻床工考试(精选试题).doc VIP
- 化工企业双重预防机制.pdf VIP
- (铁总计统〔2017〕177号 )中国铁路总公司关于进一步加强铁路建设项目征地拆迁工作和费用管理的指导意见.pdf VIP
- 深圳新桥街道万丰社区大朗山片区城市更新项目.pdf
- 中小学劳动教育课程如何创新与实施.docx VIP
- 大航海时代OL陆战技巧学习指南.docx
- 集中式山地光伏电站方阵区直流电缆敷设技术要求.pdf VIP
文档评论(0)