SpringBoot工程中的MyBatis框架的原理分析以及日志API应用分析
文章图片
SqlSessionTemplate通过代理对象找到数据源
文章图片
最根上
文章图片
executor这个对象就是关联着数据源对象,那么获取的事务是哪呢?
我们可以从MyBatis官网入门这边看到
文章图片
mybatis-3-mapper.dtd这个是约束文件,用来约束文档内部有什么元素,元素与元素之间有什么嵌套关系,元素内部可以有什么属性
MyBatis为我们的Dao接口创建的实现类及其方法内部做了什么
1.获取SqlSeesion对象
2.获取sql映射的key信息(namespace,elementId)
3.基于statement获取sql映射信息(底层是存储了MappedStatement对象中)
4.基于SqlSession以及sql实现与数据库的会话
文章图片
文章图片
日志API应用分析
当我们想看到sql的输出的时候,我们可以在SpringBoot工程的配置文件中配置这样一行:logging.level.XXXX(启动类所在的包名)=日志级别
文章图片
效果图:
文章图片
做日志输出的时候,尽量不要用System.out.println()来进行日志的输出,我们可以借助日志对象
文章图片
调用的getLogger方法,括号中的参数是写Logger类型的变量所在类的字节码对象。用于提示日志是来自于哪个类的。
使用方式:
文章图片
效果图:
文章图片
常用日志级别的高低排序:日志级别trace
控制台缓冲区满了以后就会做一个清空操作,那么我们可以通过写到文件中的形式来保存日志。只需在SpringBoot工程的配置文件中做这样的配置即可:
文章图片
等号的右边是存日志文件的目录,默认的文件名是spring.log;
当我们的项目反复运行的时候,日志文件的内容是会继续追加的,并不会覆盖掉。
【SpringBoot工程中的MyBatis框架的原理分析以及日志API应用分析】Logger,LoggerFactory用到了门面设计模式。这俩是实现类对外的门面
推荐阅读
- 热闹中的孤独
- JS中的各种宽高度定义及其应用
- Activiti(一)SpringBoot2集成Activiti6
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- Android中的AES加密-下
- 放下心中的偶像包袱吧
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- SpringBoot调用公共模块的自定义注解失效的解决
- C语言浮点函数中的modf和fmod详解