ibatis的核心接口是:
com.ibatis.sqlmap.client.SqlMapClient
而Spring中的
SqlMapClientTemplate接管了此核心接口。
而此类有一个方法:
setSqlMapClient(com.ibatis.sqlmap.client.SqlMapClient sqlMapClient)
因此,可以在IoC容器中配置此Clienrt:
<bean id="sqlMapClientTemplate"
class="org.springfreamework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient" ref="sqlMapClient"></property>
</bean>
但是,这个包中,还有一个类: SqlMapClientFactoryBean
所以,一般我们使用 SqlMapClientFactory 这个类来获得 SqlMapClient
<bean id="sqlMapClient" class="org.springframework.org.ibatis.SqlMapClientFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="sql-map-config.xml" />
</bean>然后这个 sql-map-config.xml 就是我们定义的配置文件咯。
然后,我们在程序中,就可以使用sqlMapClientTemplate注入到各个Dao了。
但是,这种做法总是要多谢很多 setSqlMapClientTemplate方法,如果类很多的话。
那么,有一种方法,就是写一个父类,然后,让所有的Dao继承这个父类,就解决了这一点。
又但是,如果Dao由于需要继承别的类,那么就只能继承一个类了,那就没有办法了,只能老老实实写set方法和注入属性了。
本文介绍了如何在Spring框架中集成iBatis,重点讲解了如何使用SqlMapClientTemplate接管iBatis的核心接口,并通过SqlMapClientFactoryBean获取SqlMapClient实例。此外,文章还提出了一种简化集成过程的方法,即通过父类实现DAO接口的统一注入。
196

被折叠的 条评论
为什么被折叠?



