0. 原代码预览
简单实现在数据库中插入数据
public void testInsert() throws IOException {
//获取核心配置文件的输入流
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//获取SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//获取SqlSessionFactory对象
SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
//获取sql的回话对象sqlSession,是Mybatis提供的操作数据库的对象
SqlSession sqlSession = sqlSessionFactory.openSession();
//获取UserMapper的代理实现类对象
UserMapper mapper = sqlSession.getMapper(UserMapper.class);
//调用mapper接口中的方法,实现添加用户信息的功能
int result = mapper.insertUser();
System.out.println("结果:"+result);
//提交事务
sqlSession.commit();
//关闭sqlSession对象
sqlSession.close();
}
- SqlSession:代表Java程序和数据库之间的会话。(HttpSession是Java程序和浏览器之间的会话)
- SqlSessionFactory:是”生产”SqlSession的”工厂”。
1. 简化代码
根据两个一致性,可以将 获取UserMapper的代理实现类对象
和 调用mapper接口中的方法
两部分代码写为:
//例如我的代码:
int result = sqlSession.insert("com.atguigu.mybatis.insertUser");//参数是:全类名+方法名。也就是映射文件中sql的id位置
2. 自动提交sql事务
每次都需要手动提交SQL事务 sqlSession.commit()
。可以在 获取sql的回话对象sqlSession
的代码: sqlSessionFactory.openSession()
加一个参数:
SqlSession sqlSession = sqlSessionFactory.openSession(true);
3. 加入log4j日志功能
- 在pom.xml中加入依赖
log4j
log4j
1.2.12
- 加入log4j的配置文件
log4j的配置文件名必须为log4j.xml,存放的位置是src/main/resources目录下
Original: https://www.cnblogs.com/tianaqiang/p/16599371.html
Author: 就是搞笑啊
Title: Mybatis框架–优化过程
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609808/
转载文章受原作者版权保护。转载请注明原作者出处!