ToB企服应用市场:ToB评测及商务社交产业平台

标题: Mybatis框架--优化过程 [打印本页]

作者: 万有斥力    时间: 2022-9-16 17:21
标题: Mybatis框架--优化过程
0. 原代码预览

简单实现在数据库中插入数据
  1. public void testInsert() throws IOException {
  2.         //获取核心配置文件的输入流
  3.         InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
  4.         //获取SqlSessionFactoryBuilder对象
  5.         SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
  6.         //获取SqlSessionFactory对象
  7.         SqlSessionFactory sqlSessionFactory = sqlSessionFactoryBuilder.build(is);
  8.         //获取sql的回话对象sqlSession,是Mybatis提供的操作数据库的对象
  9.         SqlSession sqlSession = sqlSessionFactory.openSession();
  10.    
  11.             //获取UserMapper的代理实现类对象
  12.         UserMapper mapper = sqlSession.getMapper(UserMapper.class);
  13.         //调用mapper接口中的方法,实现添加用户信息的功能
  14.         int result = mapper.insertUser();
  15.         System.out.println("结果:"+result);
  16.       
  17.         //提交事务
  18.         sqlSession.commit();
  19.    
  20.         //关闭sqlSession对象
  21.         sqlSession.close();
  22.     }
复制代码

1. 简化代码

根据两个一致性,可以将获取UserMapper的代理实现类对象和调用mapper接口中的方法两部分代码写为:
  1. //例如我的代码:
  2. int result = sqlSession.insert("com.atguigu.mybatis.insertUser");//参数是:全类名+方法名。也就是映射文件中sql的id位置
复制代码
2. 自动提交sql事务

每次都需要手动提交SQL事务sqlSession.commit()。可以在获取sql的回话对象sqlSession的代码:sqlSessionFactory.openSession()加一个参数:
  1. SqlSession sqlSession = sqlSessionFactory.openSession(true);
复制代码
3. 加入log4j日志功能


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4