Administrator
发布于 2024-07-25 / 175 阅读
0
0

使用mybatis时查询时遇到映射对象为内部类的问题

使用mybatis时查询时遇到映射对象为内部类的问题

在xml中映射对象内部类(被static修饰的静态嵌套类)时使用$代替. 示例如下:

  <resultMap id="faultTrendsMap" type="com.aaa.bbb.domain.vo.BulgingTrackTotalDataVO$FaultTrend">
      <result property="dateTime" column="dateTime"/>
      <result property="value" column="value"/>
  </resultMap>

FaultTrend在BulgingTrackTotalDataVO内使用static修饰,被称为静态嵌套类

  public static class FaultTrend{

      /**
       * 趋势值
       */
      @ApiModelProperty("趋势值")
      private BigDecimal value;
      /**
       * 时间
       */
      @ApiModelProperty("时间")
      private String dateTime;

  }

ps:静态嵌套类含义为 可以脱离父本单独存在,而内部类需要先存在一个父本实例才可以存在。

mybtis查询时映射Java内部的类时需要满足以下两点:

  • 确保内部的类为static修饰
  • 在xml中使用使用$代替.

评论