MyBatis 查询多条数据返回 map 类型,MySQL 字段名和实体类不一致

MySQL 数据

MyBatis 查询多条数据返回 map 类型,MySQL 字段名和实体类不一致_第1张图片

接口

这里 userId 是区分大小写的

@MapKey("userId")
Map<String, User> getAllToMap();

实体类

public class User {
    private Integer userId;
    private String userName;
    private String userPassword;
}

mapper

因为 mysql 字段名和 user 实体类并不一致,所以起别名,username 之所以没起别名,是因为 mysql 大小写不敏感

<select id="getAllToMap" resultType="java.util.Map">
        select id as userId, username, password as userPassword from user;
select>

stdout

{1={userPassword=123456, userId=1, username=lisi}, 2={userPassword=00000, userId=2, username=zhangsan}, 3={userPassword=12345, userId=3, username=laowu}}

你可能感兴趣的:(MyBatis,mybatis,mysql,数据库)