1:yml配置mybatis_plus默认日记框架
mybatis-plus:#这个作用是扫描xml文件生效可以和mapper接口文件使用,#如果不加这个,就无法使用xml里面的sql语句#启动类加了@MapperScan是扫描指定包下mapper接口生效,如果不用@MapperScan可以在每一个mapper接口添加@Mapper注解mapper-locations: classpath*:com/example/poi/mapper/**/xml/*Mapper.xmlglobal-config:# 关闭MP3.0自带的bannerbanner: falsedb-config:#主键类型id-type: ASSIGN_ID# 默认数据库表下划线命名table-underline: trueconfiguration:# 这个配置会将执行的sql打印出来,在开发或测试的时候可以用log-impl: org.apache.ibatis.logging.stdout.StdOutImpl# 返回类型为Map,显示null对应的字段call-setters-on-nulls: truelogging:level:# 日记级别,设置的越小捕抓的信息越多 trace<debug<info<warn<error#root 键指定了根日志记录器的级别为 INFOroot: INFO#com.baomidou.mybatisplus 包下的日志记录器级别为 DEBUGcom.baomidou.mybatisplus: INFOfile:#保留了最近 30 天的日志max-history: 30#每个日记大小,当日记达到100M但还没到达下一天就生成一个新的文件按i序号max-size: 100MB#保存日记实际路径,确保指定的路径对应的目录已存在,并具有具有的写入权限pattern: /home/app/logs//mybatis-%d{yyyy-MM-dd}-%i.log#设置日志文件夹存储总大小的上限,超过就删除旧的total-size-cap: 1GB
1-1: 如果不需要控制台打印parsee mapper file之类信息,可以修改mabatis日记框架,不使用默认StdOutImpl,使用Slf4jImpl,同时加上logiing管理日记,如下
configuration:
# log-impl: org.apache.ibatis.logging.stdout.StdOutImpllog-impl: org.apache.ibatis.logging.slf4j.Slf4jImplcall-setters-on-nulls: truelogging:level:root: infocom.baomidou.mybatisplus: debugpath: G:\temptemptemp\logs
- 这个可以设计日记在控制台输出,如果日记输出最小为debug日记,如果设计日记级别高就不输出,设置级别底trace也是日记最小输出debug
- 可以设置日记自己权重打印相应信息出来,查看项目启动情况,trace<debug<info<warn<error
2:使用logback-spring.xml生成日记管理,在resource项目下生成文件,文件内容如下
<?xml version="1.0" encoding="UTF-8"?>
<configuration><!-- 日志文件路径 --><springProperty scope="context" name="logPath" source="log.logPath"/><!-- 日志文件名称 --><springProperty scope="context" name="logName" source="log.logName"/><!-- <logger name="org.springframework.web" level="WARN"/>-->
<!-- <logger name="org.springboot.sample" level="WARN"/>-->
<!-- <logger name="com.example.poi" level="INFO"/>-->
<!-- 这个是可以输出mybatis信息,要在yml配置mybatis的日记框架-->
<!-- <logger name="org.mybatis" level="INFO"/>--><appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level --- [%thread] %logger Line:%-3L - %msg%n</pattern><charset>UTF-8</charset></encoder></appender><appender name="WEB_CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level --- [%thread] %logger Line:%-3L - %msg%n</pattern><charset>UTF-8</charset></encoder></appender><!-- debug 日志文件 --><appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><!-- 正在记录的日志文档的路径及文档名 --><file>${logPath}${logName}.log</file><!--日志文档输出格式--><encoder><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level --- [%thread] %logger Line:%-3L - %msg%n</pattern><charset>UTF-8</charset></encoder><!-- 日志记录器的滚动策略,按日期,按大小记录 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志归档 --><fileNamePattern>${logPath}${logName}-%d{yyyy-MM-dd}.%i.log</fileNamePattern><timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>256MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy><!--日志文档保留天数--><maxHistory>1</maxHistory></rollingPolicy></appender><root level="INFO"><appender-ref ref="FILE"/><appender-ref ref="CONSOLE"/>
<!-- <appender-ref ref="WEB_CONSOLE"/>--></root></configuration>
< root> 是用来设置默认的日志级别和输出目标,而 < logger> 则是用来针对特定的包或类进行更细粒度的日志配置。两者都可以设置 level 属性,但 < logger> 的级别配置会覆盖 < root> 的默认级别
2-1:如果控制台需要输出mybatis的具体sql信息需要在yml配置mybatis的日记输出框架
configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
System.out.println不能打印到输出日记,还有mybatis框架默认执行SQl语句