mybatis返回map键值对_MyBatis框架快速入门第二篇

 种一棵树最好的时间是十年前,其次就是现在!

MyBatis框架入门第二篇

       上一篇文章我们介绍了Mybatis的一些入门操作,包括配置文件的细节、CRUD操作,动态Sql以及基于Mapperd代理方式开发等内容,这篇文章开始着手MyBtis的缓存机制以及逆向工程的开发

引入log4j日志框架

在项目中加入log4j的配置文件,用于打印日志信息,便于开发调试

在src/main/resources目录下创建log4j.properties文件,配置信息如下:
# Global logging configurationlog4j.rootLogger=DEBUG, stdout# Console output...log4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

只要将该文件放在指定的位置,log4j工具会自动到指定位置加载上述文件,读取文件中的配置信息并使用!

95d396b0421572fdc6b215935fb4a20a.png

MyBatis缓存机制 缓存的意义

将用户经常查询的数据放在缓存(内存)中,这样用户去查询数据就不用频繁的从系型数据库进行查询,这样避免了频繁的与数据库进行交互,尤其在查询越多,缓存命中率越高的情况下,使用缓存对性能的提高更明显

 MyBatis框架提供了对缓存的支持,分为一级缓存和二级缓存,默认情况下开启的是一级缓存(同一个SqlSession级别)

一级缓存

同一个SqlSession对象,在参数和Sql语句完全一样的情况下,只执行一次Sql语句进行查询(如果缓存没有过期)

修改

上一篇文章我们进行了代码优化,封装了一个MyBatisUtil工具类,引入ThreadLocal,现在方便我们测试,需要将ThreadLocal变量暂时屏蔽掉,这样保证每次创建的SqlSession都是不相同的。
 /**     * 获取SqlSession对象     * @return     */    public static SqlSession getSqlSession(){
    //        SqlSession sqlSession = threadLocal.get();//        if (sqlSession == null){
    //            sqlSession = sqlSessionFactory.openSession(true);//            threadLocal.set(sqlSession);//        }        SqlSession sqlSession = sqlSessionFactory.openSession(true);        return sqlSession;    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值