您的位置:首页 > 编程语言 > Java开发

MyBatis整合Spring的实现(9)

2015-10-26 00:00 477 查看
摘要: Spring事务、最终数据源

前面章节已经把MyBatis的全局配置文件的解析分析完成,下面继续对整合类SqlSeesionFactoryBean,代码进行分析。

if (this.transactionFactory == null) {
this.transactionFactory = new SpringManagedTransactionFactory();
}
Environment environment = new Environment(this.environment, this.transactionFactory, this.dataSource);
configuration.setEnvironment(environment);
if (this.databaseIdProvider != null) {
try {
configuration.setDatabaseId(this.databaseIdProvider.getDatabaseId(this.dataSource));
} catch (SQLException e) {
throw new NestedIOException("Failed getting a databaseId", e);
}
}


这里是Spring的配置文件,MyBatis整合Spring的实现(1)中1的SpringXML配置(样例)。

也就是需要建立SpringManagedTransactionFactory事务工厂。工厂构建完成,根据新事物工厂与数据源重新生成环境信息。这里在通过Spring配置提供的数据源获取当前数据库产品的名称。

总结

这里就会覆盖MyBatis的全局文件中设计的事务工厂及数据源。Configuration(全局配置类)中的databaseId也会被覆盖。这里通过DEBUG,来附上最终Configuration(全局配置类)的属性信息。





内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: