Mybatis03-ResultMap,日志,分页

需要解决的问题:属性名与字段名不一致

问题描述

  • 当User中属性名与数据库中字段名不一致,会出现查询不到该属性的情况。(实际上sql语句查询时候取的set与get方法的属性名,即setXX与getXX,sql取得是XX。假设属性名与password,但是这两个方法为setPwd与getPwd,实际上还是可以查到,此处不讨论这种情况。)
  • User类
    在这里插入图片描述
  • 数据库字段
  • 在这里插入图片描述
  • 从上述两张图可以明显看出,属性名与数据库字段不一致,因此查询结果会出现查询不到该属性的值,如下图
    在这里插入图片描述

解决方法

  • 方法1:在sql语句中动态的起别名,使属性名与字段名一致。(不推荐)
<select id="selectUserById" resultType="User">
  select id , name , pwd as password from user where id = #{id}
</select>
  • 方法2:通过结果集映射解决
    在这里插入图片描述
    如上图所示,通过更改resultType为resultMap。并在resultMap标签中定义字段名与属性的映射关系,这样即可通过属性名在数据库中找到对应的字段数据。

日志

日志工厂

  • 如果一个数据库出现异常,需要排错,日志就是最好的助手。
  • 具体做法:在Mybatis配置文件中配置日志。value可以通过官方文档获取。 在这里插入图片描述

LOG4J

  • 什么是LOG4J
    • og4j是Apache的一个开源项目
    • 通过使用Log4j,我们可以控制日志信息输送的目的地:控制台,文本,GUI组件…
    • 我们也可以控制每一条日志的输出格式;
    • 通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。
  • LOG4J的使用准备
  1. 导入LOG4J包,若不导入则报错ClassNotFoundException。
  2. 配置log4j.properties配置文件
  3. 在项目核心配置文件中配置log4j日志
  • 简单使用
  1. 使用log4j的类中,导入包import org.apache.log4j.Logger;
  2. 生成日志对象,参数为当前类.class
static Logger logger = Logger.getLogger(UserDaoTest.class); 
  1. 日志级别
		logger.info("info:进入log4j");
        logger.debug("debug:进入log4j");
        logger.error("error:进入log4j");

分页

  • 方法1:Limit实现
  • 方法2:RowBounds实现(不推荐)
  • 方法3:分页插件:PageHelper
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值