MyBatis鉴别器映射

需求:有时候一个单独的数据库查询会返回很多不同的数据类型,discriminator鉴别器标签就是用来处理这种情况的。鉴别器非常容易理解,有点想java里面的switch语句。

discriminator标签常用的两个属性如下:

  • column:该属性用于设置要进行鉴别比较值的列。
  • javaType:该属性用于指定列的类型,保证使用相同的java类型来比较值。
discriminator标签可以有1个或多个case标签,case标签包含下面三个属性:
  • value:该值为discriminator指定column用来匹配的值。
  • resultMap:当column的值和value的值匹配时,可以配置resultMap和指定的映射。resultMap的优先级比resultType的优先级高。
  • resultType:当column的值和value的值匹配时,可以配置resultType指定的映射。
根据之前的用户角色管理系统直接从代码开始吧:

首先在roleMap.xml中添加: