J2EE核心:iBatisDAO入门与进阶二

王朝java/jsp·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

DAO框架架构

由于有了一个可以运行的示例,让我们得以粗略了解DAO框架是如何运作的。在图2表示的顺序图中演示了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对象截获返回并提交给事务。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航