在MyBatis中,Result注解用于映射查询结果集中的列到Java对象的属性。Result注解有如下属性:
- property:指定Java对象中的属性名,用于映射查询结果集中的列值。
- column:指定查询结果集中的列名,用于和Java对象的属性进行映射。
- jdbcType:指定查询结果集中的列的JDBC类型,用于类型转换。
- typeHandler:指定处理查询结果集中的列值的类型处理器。
- one:用于映射一对一关联查询的结果。
- many:用于映射一对多关联查询的结果。
配置示例:
@Results({ @Result(property = "id", column = "user_id", jdbcType = JdbcType.INTEGER), @Result(property = "username", column = "user_name", jdbcType = JdbcType.VARCHAR), @Result(property = "email", column = "user_email", jdbcType = JdbcType.VARCHAR), @Result(property = "roles", column = "user_id", many = @Many(select = "com.example.mapper.RoleMapper.findByUserId")) }) public User findUserById(Integer userId);