首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件开发 >

总结:实例解析DAO设计模式工作流程(无框架)

2012-11-03 
小结:实例解析DAO设计模式工作流程(无框架)昨儿学Spring感觉对DAO设计模式一知半解,就扒了框架自己写了一

小结:实例解析DAO设计模式工作流程(无框架)


    昨儿学Spring感觉对DAO设计模式一知半解,就扒了框架自己写了一个实例。花了一整天时间,不过收获很大,趁着没忘赶紧记录一下,希望以后有时间再来改进。


一:概述:

    概念就不赘述了,网上有的是,就从测试程序下手 一步步分析一下。

    文件结构是按照Spring写的,也分dao、model、service,如下图:

总结:实例解析DAO设计模式工作流程(无框架)

从执行顺序上来说:

    首先是.service层:测试和JSP前台调用都只调用service层的方法,service里的代理给外界提供了统一的操作方法,而方法的具体实现是靠其余两个底层支撑的。(之所以分层,是因为以后需要存入数据库的对象不只只有上边的Student一个对象,也不只有oracle一种数据库,这样分层易于程序延展)

    第二是DAO层:DAO层封装了 “如何把一个对象存入数据库” 的办法。比如如何连接上数据路(比如oracle,DBConnection.java),如何把已知的Student对象存入刚刚已连接的数据库(前一个比如提到的,StudentDAOImp.java),StudentDAO的抽象方法(IStudentDAO.java) 和工厂类等

    最后是model层:就是个VO,告诉上层对应请求、要存储表中的Student具体是个什么。


二:从测试程序的执行顺序分析 1.测试程序中测试插入的部分(StudentDAOProxyTest.java):

这是测试程序的一部分,能看出是要把Student类的一个实例,传给工厂类产出的实例的doCreate()方法:

DROP TABLE student;  CREATE TABLE student    (        studentid NUMBER(9),        name VARCHAR2(50) NOT NULL,        age NUMBER(9) NOT NULL,        CONSTRAINT student_studentid_pk PRIMARY KEY(studentid)     ); 



    下一步是根据这个小例子,把框架整合进来,下回分解。










热点排行