MyBatis基础配置ResultMap与日志工厂

发表于:2021-3-08 09:37

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Lz_蚂蚱    来源:博客园

  ResultMap:
  ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了。
  <resultMap id="userResultMap" type="User">
    <id property="id" column="user_id" />
    <result property="username" column="user_name"/>
    <result property="password" column="hashed_password"/>
  </resultMap>
  <select id="selectUsers" resultMap="userResultMap">
    select user_id, user_name, hashed_password
    from some_table
    where id = #{id}
  </select>
  实体类中属性password与数据库中字段名hashed_password不同,查询时查询不到,所以需要对字段名进行起别名映射。
  property实体类、column数据库
  对于数据库中与实体类相同的属性名,可以自动映射,就不需要在resultMap中进行起别名映射。
  日志工厂:
  Mybatis 的内置日志工厂提供日志功能,内置日志工厂将日志交给以下其中一种工具作代理:
  · SLF4J
  · LOG4J 【掌握】
  · LOG4J2
  · JDK_LOGGING
  · COMMONS_LOGGING
  · STDOUT_LOGGING 【掌握】
  · NO_LOGGING
  在Mybatis中具体使用哪一个日志实现,在设置中设定!
  STDOUT_LOGGING标准日志输出:
  <configuration>
      <properties resource="jdbc.properties"/>
      <!--设置日志-->
      <settings>
          <!--必须这么写,注意前后空格不要有-->
         <setting name="logImpl" value="STDOUT_LOGGING"></setting>
      </settings>
  注意:
  必须这么写,注意前后空格不要有:name="logImpl" value="STDOUT_LOGGING"
  log4j:
  1、导入log4j依赖:
  <dependencies>
      <dependency>
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
          <version>1.2.17</version>
      </dependency>
  </dependencies>
  2、log4j.properties:
  log4j.appender.stdout=org.apache.log4j.ConsoleAppender
  log4j.appender.stdout.Target=System.err
  log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
  log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
  log4j.appender.file=org.apache.log4j.FileAppender
  log4j.appender.file.File=c:\\mylog.log
  log4j.appender.file.layout=org.apache.log4j.PatternLayout
  log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
  log4j.rootLogger=DEBUG, stdout
  3、设置log4j:
  <?xml version="1.0" encoding="UTF-8" ?>
  <!DOCTYPE configuration
          PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
          "http://mybatis.org/dtd/mybatis-3-config.dtd">
  <configuration>
      <properties resource="jdbc.properties"/>
      <!--设置日志log4j-->
      <settings>
          <setting name="logImpl" value="LOG4J"></setting>
      </settings>
  简单使用:
  // 导入apache包
  import org.apache.log4j.Logger;
  public class UserTest {
      static Logger logger = Logger.getLogger(UserTest.class);  // 方法中参数为当前类对象
      @Test
      public void log4jTest() {
          logger.info("提示信息");
          logger.debug("提示信息");
          logger.error("提示信息");
      }

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号