MyBatis的配置
以下代码的底层实现
@Override public int add(Student stu) throws IOException { String config="MyBatis_config.xml"; Reader reader=Resources.getResourceAsReader(config); SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader); //openSession底层发生了什么 SqlSession session = factory.openSession(); //insert底层发生了什么 int result = session.insert("insertStudent",stu); //为什么session可以提交事务 session.commit(); //为什么session.close()不会回滚事务 session.close(); return result; }
我们先来解析第一个问题
openSession底层做了什么
解析:对配置做了初始化
第二个问题:insert 和 delete 底层发生了什么
第三个问题
为什么session可以引起事务的提交
第四个问题
为什么session.close()不会回滚事务