使用xml配置文件的方式获取sql会话
步骤规范说明
config
根据ibatis
全局配置规范,设定满足当前环境的配置.Resources
若是单独测试环境,可使用ibatis
内置的便捷资源加载类对象
org.apache.ibatis.io.Resources
若是整合的环境,根据特定需求,选择的使用资源加载的方式.SqlSessionFactoryBuilder
创建sql会话创建工厂
实例,以此来创建sql会话工厂
,
org.apache.ibatis.session.SqlSessionFactoryBuilder
SqlSessionFactoryBuilder
的生命周期应当在局域作用域
内;
即method-scope
.- 其主要作用就是生成
SqlSessionFactory
对象.
当其完成任务后,就没有存在的意义了.
SqlSessionFactory
使用sql会话工厂
实例,打开sql会话
的实例.可参考的类对象为:
org.apache.ibatis.session.SqlSessionFactory
SqlSessionFactory
应当存在于ibatis
应用的整个生命周期;
即application-scope
- 建议且应当使用
单例模式
创建其类对象的实例;
SqlSession
sql会话工厂实例获取后,可通过其来获取sql会话
实例,
以此来与数据库建立连接关系
,从而进行所需的数据操作.
可参考的类对象为:
org.apache.ibatis.session.SqlSession
SqlSession
类对象实例应当存在于局部作用域中;
即method-scope
.- 它是
非线程安全
的,涉及多线程的时候,要考虑线程安全性
的问题. - 若不使用当前的
SqlSession
实例时,要及时的关闭资源
连接.
Mapper
- 映射器是个接口,没有任何实现类;
- 作用主要是执行
sql语句
,返回执行结果; - 作用域应当
包含在
sqlSession的范围之内; - 当使用新式的
mapper接口
方式的时候,就需要使用到
此Mapper
接口的动态代理实现类,来便捷的操作数据库中的数据.
测试步骤主要截取
- 全局配置文件
<configuration> <properties resource="siye/ibatis/config/db.properties" /> <settings> <setting name="mapUnderscoreToCamelCase" value="true" /> </settings> <environments default