zoukankan      html  css  js  c++  java
  • mybatis日志的使用问题:

    mybatis日志的使用问题:


    在使用mybatis的时候,经常会遇到日志无法输出的问题;今天解决这个问题;

    1、仅使用mybatis的时候如何输出:


    一般单独使用mybatis+junit的时候会使用到日志的输出,使用是需要添加下面的代码:

    org.apache.ibatis.logging.LogFactory.useStdOutLogging();
    

    使用示例:

    @Test
      public void testCondition(){
          try {
              //如果想在控制台中输出日志的内容,那么必须添加上这句话
              org.apache.ibatis.logging.LogFactory.useStdOutLogging();
              Reader reader = Resources.getResourceAsReader("mybatis-config.xml");
              SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder()
                      .build(reader);
              reader.close();
              SqlSession session = null;
              session = sqlSessionFactory.openSession();
              StudentMapper studentMapper = (StudentMapper) session.getMapper(StudentMapper.class);
              StudentExample studentExample = new StudentExample();
              GeneratedCriteria generatedCriteria = studentExample.createCriteria();
              generatedCriteria.addCriterion("1=1");
              List<Student> student = studentMapper.selectByExample(studentExample);
              for (Student student2 : student) {
                  System.out.println(student2.getName());
              }
          } catch (IOException e) {
              e.printStackTrace();
          }
      }
    

    运行查看输入的结果:

    Logging initialized using 'org.apache.ibatis.logging.stdout.StdOutImpl' >adapter.
    PooledDataSource forcefully closed/removed all connections.
    PooledDataSource forcefully closed/removed all connections.
    PooledDataSource forcefully closed/removed all connections.
    PooledDataSource forcefully closed/removed all connections.
    Openning JDBC Connection
    Created connection 33431531.
    ooo Using Connection [com.mysql.jdbc.JDBC4Connection@1fe1feb]
    > Preparing: select id, name, gender, major, grade, supervisor_id from student WHERE ( 1=1 )
    > Parameters:
    <
    Columns: id, name, gender, major, grade, supervisor_id
    <
    Row: 1, 李林, 男, 计算机科学与技术, 2011, 1
    <== Row: 2, 陈明, 男, 软件技术, 2012, 1
    <== Row: 4, 陈明2, 男, 软件技术, 2012, 2
    李林
    陈明
    陈明2

    同时在log4j.properties文件的配置信息如下:

    # Global logging configuration
    log4j.rootLogger=debug
    # MyBatis logging configuration...
    log4j.logger.org.mybatis.example=DEBUG
    # Console output...
    ### Console output...
    log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
    

    2、和spring配合使用时,日志的输出内容


    spring+mybatis时输入的配置文件内容为:

    ## set log levels ###
    #log4j.rootLogger = debug , stdout , D , E
    log4j.rootLogger = debug , stdout , D
     
    ###  output to the console ###
    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 = %d{ABSOLUTE} %5p %c{ 1 }:%L - %m%n
    log4j.appender.stdout.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
     
    ### Output to the log file ###
    log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
    log4j.appender.D.File = ${springmvc.root}/WEB-INF/logs/error.log 
    log4j.appender.D.Append = true
    log4j.appender.D.Threshold = ERROR 
    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
    
    
  • 相关阅读:
    angularJs项目实战!02:前端的页面分解与组装
    angularJs项目实战!01:模块划分和目录组织
    django admin 导出数据简单示例
    django 学习之model操作(想细化)
    6.11大杂烩。。
    InlineModelAdmin对象的学习
    django-salmonella的使用
    python 保留两位小数
    Django 时间与时区设置问题
    Django学习
  • 原文地址:https://www.cnblogs.com/babyhhcsy/p/4497011.html
Copyright © 2011-2022 走看看