关于java:SpringBoot工程中的MyBatis框架的原理分析以及日志API应用分析

10次阅读

共计 772 个字符,预计需要花费 2 分钟才能阅读完成。


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<debug<info<error
日志级别的目标是管制输入的日志量,从而进步性能


控制台缓冲区满了当前就会做一个清空操作,那么咱们能够通过写到文件中的模式来保留日志。只需在 SpringBoot 工程的配置文件中做这样的配置即可:

等号的左边是存日志文件的目录, 默认的文件名是 spring.log; 当咱们的我的项目重复运行的时候,日志文件的内容是会持续追加的,并不会笼罩掉。


Logger,LoggerFactory 用到了门面设计模式。这俩是实现类对外的门面

正文完
 0