zoukankan      html  css  js  c++  java
  • MyBatis——Log4J(日志)

    1、日志:Log4j

    为什么要使用日志;

    跑了一个代码,只能看到 结果!结果有错误了。排除错误!

    MyBatis日志:

    <settings>
        <!--配置日志,就可以看到具体的SQL信息,从而找到出错的原因!-->
        <setting name="logImpl" value="STDOUT_LOGGING"/>
    </settings>
    

    工作中我们用的更多的 log4j

    2、如何使用Log4j

    1、导入包依赖

    <!-- https://mvnrepository.com/artifact/log4j/log4j -->
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    

    2、编写log4j的配置文件

    ### 设置###
    log4j.rootLogger = debug,stdout,D,E
    
    ### 输出信息到控制抬 ###
    log4j.appender.stdout = org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.Target = System.out
    log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern = [%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n
    
    ### 输出DEBUG 级别以上的日志到=E://logs/error.log ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = ./log/log.log
    log4j.appender.D.Append = true
    log4j.appender.D.Threshold = DEBUG
    log4j.appender.D.layout = org.apache.log4j.PatternLayout
    log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n
    
    ### 输出ERROR 级别以上的日志到=E://logs/error.log ###
    log4j.appender.E = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.E.File =./log/error.log
    log4j.appender.E.Append = true
    log4j.appender.E.Threshold = ERROR
    log4j.appender.E.layout = org.apache.log4j.PatternLayout
    
    

    3、修改日志实现为 Log4j,注意大小写问题即可

    <settings>
        <!--配置日志,就可以看到具体的SQL信息,从而找到出错的原因!
             切换为Log4j 的之后,大小写问题
            -->
        <setting name="logImpl" value="LOG4J"/>
    </settings>
    

    4、假设我们要使用Log4j 的类去打印日志

    import com.jiang.dao.UserMapper;
    import com.kuang.pojo.User;
    import com.jiang.utils.MyBatisUtils;
    import org.apache.ibatis.session.SqlSession;
    import org.apache.log4j.Logger;
    
    public class Test1 {
        // 注意导入包的问题  org.apache.log4j.Logger
        static Logger logger = Logger.getLogger(Test1.class);
    
        public static void main(String[] args) {
    
            SqlSession session = MyBatisUtils.getSession();
            RMapper mapper = session.getMapper(RMapper.class);
    
            System.out.println("1231321222222");// 普通的输出
    
            // 通过log4j 可以将日志实现细粒度的控制;
            logger.error("1231321222222"); // 错误信息
            logger.info("1231321222222"); // 提示信息
            logger.debug("1231321222222");
    
            // 属性名和字段不一致!
            User user = mapper.selectUserById(1);
            System.out.println(user);
    
        }
    }
    
  • 相关阅读:
    有向图的十字链表存储表示 以及相关操作(包括增加弧、删除弧、删除顶点等)
    数据结构学习笔记—图---图的连通性、顶点间的路径
    解决Vue父路由进入子路由选中样式消失的问题
    解决vue页面刷新,数据丢失
    解决PHP接收不到axios的POST的传参方式
    rem理解及应用【笔记】
    JS基础(学习笔记)
    css中的小技巧
    css中文单行、多行超出省略号和英文换行(学习笔记)
    关于JS(原生js+jq)中获取、设置或者删除元素属性和获取元素值
  • 原文地址:https://www.cnblogs.com/godles/p/12333952.html
Copyright © 2011-2022 走看看