首页 > 学院 > 开发设计 > 正文

J2EE核心:iBatis DAO入门与进阶二

2019-11-18 12:24:51
字体:
来源:转载
供稿:网友

DAO框架架构

 

由于有了一个可以运行的示例,让我们得以粗略了解DAO框架是如何运作的。在图2表示的顺序图中演示了DAO的工作方式:



 

J2EE核心:iBatis DAO入门与进阶二

点击查看大图





图2. DAO顺序图

 

在开始时,调用DaoManagerBuilder.buildDaoManager()并传入DAOMap.xml来初始化DAO框架。在这个方法中DAO框架会读取DAOMap.xml并且由此生成相应的DAOManager对象。这个对象包括了对支持的数据存储机制的描述。哪个接口会被实现,哪个是接口和存储机制结合的实现类?基本上这是和DAOMap.xml文件相等的 java对象。

 

当有了DAOManager对象,可以从中得到ContactDAO接口的SQL Map实例。DAO框架会返回一个包装了实现类的DaoPRoxy对象。在本例子中将给SQLMapContactDAO返回一个DaoProxy对象。这个DaoProxy对象答应DAO框架截获调用商业方法。本例中,当调用 contactDAO.selectContact()时,DAO框架会截获这个调用并检查事务处理是否已经开始执行,假如没有,它将调用事务治理器中的startTransaction()创建一个新的事务处理调用。假如处理已经开始,DaoProxy对象会调用事务中的SQLMapContactDAO中的selectContact()方法。当selectContact()调用返回的时候,DaoProxy对象截获返回并提交给事务。



发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表