MyBatis-Spring-SqlSessionFactoryBean(session工厂)
来源:互联网 发布:大数据产业联盟 编辑:程序博客网 时间:2024/04/29 13:58
SqlSessionFactoryBean
在基本的 MyBatis 中,session 工厂可以使用 SqlSessionFactoryBuilder 来创建。而在 MyBatis-spring 中,则使用 SqlSessionFactoryBean 来替代。
Setup
要创建工厂 bean,放置下面的代码在 Spring 的 XML 配置文件中:
要注意 SqlSessionFactoryBean 实现了 Spring 的 FactoryBean 接口(请参考 Spring 文 档的 3.8 章节)这就说明了由 Spring 最终创建的 bean 不是 SqlSessionFactoryBean 本身, 。 而是工厂类的 getObject()返回的方法的结果。这种情况下,Spring 将会在应用启动时为你 创建 SqlSessionFactory 对象,然后将它以 SqlSessionFactory 为名来存储。在 Java 中, 相同的代码是:
在一般的 MyBatis-Spring 用法中, 你不需要直接使用 SqlSessionFactoryBean 或和其对 应的 SqlSessionFactory。相反,session 工厂将会被注入到 MapperFactoryBean 或其它扩 展了 SqlSessionDaoSupport 的 DAO(Data Access Object,数据访问对象,译者注)中。
属性
SqlSessionFactory 有一个单独的必须属性,就是 JDBC 的 DataSource。这可以是任意 的 DataSource,其配置应该和其它 Spring 数据库连接是一样的。
一个通用的属性是 configLocation,它是用来指定 MyBatis 的 XML 配置文件路径的。 如果基本的 MyBatis 配置需要改变, 那么这就是一个需要它的地方。 通常这会是<settings> 或<typeAliases>的部分。
要注意这个配置文件不需要是一个完整的 MyBatis 配置。确切地说,任意环境,数据源 和 MyBatis 的事务管理器都会被忽略。SqlSessionFactoryBean 会创建它自己的,使用这些 值定制 MyBatis 的 Environment 时是需要的。
如果 MyBatis 映射器 XML 文件在和映射器类相同的路径下不存在,那么另外一个需要 配置文件的原因就是它了。使用这个配置,有两种选择。第一是手动在 MyBatis 的 XML 配 置文件中使用<mappers>部分来指定类路径。第二是使用工厂 bean 的 mapperLocations 属 性。
mapperLocations 属性使用一个资源位置的 list。 这个属性可以用来指定 MyBatis 的 XML 映射器文件的位置。 它的值可以包含 Ant 样式来加载一个目录中所有文件, 或者从基路径下 递归搜索所有路径。比如:
这会从类路径下加载在 sample.config.mappers 包和它的子包中所有的 MyBatis 映射器 XML 文件。
在容器环境管理事务中,一个可能需要的属性是 transactionFactoryClass。
原文地址:http://blog.csdn.net/lemonyfei/article/details/8925325
- MyBatis-Spring-SqlSessionFactoryBean(session工厂)
- Mybatis-Spring 的高级配置 (SqlSessionFactoryBean)
- Mybatis-Spring 的高级配置 (SqlSessionFactoryBean)
- MyBatis-Spring-SqlSessionFactoryBean
- MyBatis-Spring-SqlSessionFactoryBean
- MyBatis-Spring-SqlSessionFactoryBean
- MyBatis-Spring-SqlSessionFactoryBean
- MyBatis+Spring-SqlSessionFactoryBean
- MyBatis-Spring-SqlSessionFactoryBean
- spring-mybatis 之SqlSessionFactoryBean
- spring-mybatis 之SqlSessionFactoryBean
- Spring-MyBatis 之 SqlSessionFactoryBean
- spring mybatis之sqlSessionFactoryBean
- 【spring+mybatis】MyBatis-Spring-SqlSessionFactoryBean
- mybatis-spring学习笔记之SqlSessionFactoryBean
- Mybatis异常:java.lang.ClassNotFoundException: org.mybatis.spring.SqlSessionFactoryBean
- mybatis与spring整合之错误定义sqlSessionFactoryBean
- mybatis SqlSessionFactoryBean SqlSessionTemplate MapperScannerConfigurer
- 【方法论】极限编程(XP)
- Struts2中关于页面和后台交换数据的理解
- 关于H5页面开发适配指南
- GYM 100971 J.Robots at Warehouse(bfs)
- Struts2 文件的上传与下载
- MyBatis-Spring-SqlSessionFactoryBean(session工厂)
- [CodeVersion--GIT]Win10下git管理的代码没有绿色图标
- intellij idea开发android从入门到精通(九)————IntelliJ IDEA 界面介绍
- Java改变左上角图标
- Android 设置相关(打开, 卸载等)
- 互联网架构的高并发
- java io系列
- FCLK、HCKL和PCLK的关系
- openwrt gpio控制与使用