1 主要类的介绍
1.1Resources
Resources是mybatis中的一个类, 负责读取主配置文件。
InputStream in = Resources.getResourceAsStream("mybatis的主配置文件");
1.2 SqlSessionFactoryBuilder
作用:创建SqlSessionFactory
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
1.3 SqlSessionFactory
重量级对象, 程序创建一个对象耗时比较长,使用资源比较多。在整个项目中,有一个就够用了。
SqlSessionFactory:接口 , 接口实现类: DefaultSqlSessionFactory
SqlSessionFactory作用: 获取SqlSession对象。
SqlSession sqlSession = factory.openSession();
1. 4 openSession()方法说明:
- openSession() :无参数的, 获取是非自动提交事务的SqlSession对象
- openSession(boolean):
openSession(true) 获取自动提交事务的SqlSession.
openSession(false) 非自动提交事务的SqlSession对象
3.mybatis默认不是自动提交事物的,所以在insert,update,delete后要手动提交事务
2 主配置文件
<environments default="development">
<environment id="development">
<!--environments可以里面有很多的environment要保证每个的id是不同的-->
<!--在这里我们的事务处理机制选择JDBC-->
<transactionManager type="JDBC"/>
<!--数据源的选择,在此我们选择pooled-->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="数据库名称"/>
<property name="username" value=""/>
<property name="password" value=""/>
</dataSource>
</environment>
</environments>
<!--声明mysql文件的路径-->
<mappers>
<!--
如果mapper文件比较多 这样会很麻烦的,这时候采用下面的做法
<mapper resource="路径.xml"/>
-->
<!--这样他就会扫描这个包内的所有的mapper文件-->
<package name="包名"/>
</mappers>