Mybatis与实体类映射

时间:2025-04-24 08:40:43

数据库为MySQL,表是全部英文大写且以下划线分割,映射为驼峰命名

1、数据库表

CREATE TABLE `t_user`  (
  `USER_ID` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `USER_NAME` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `USER_PASSWORD` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `USER_EMAIL` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  PRIMARY KEY (`USER_ID`) USING BTREE,
  INDEX `IDX_NAME`(`USER_NAME`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Compact;

2、实体类

public class User {

    private String userId;
    private String userName;
    private String userPassword;
    private String userEmail;

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getUserPassword() {
        return userPassword;
    }

    public void setUserPassword(String userPassword) {
        this.userPassword = userPassword;
    }

    public String getUserEmail() {
        return userEmail;
    }

    public void setUserEmail(String userEmail) {
        this.userEmail = userEmail;
    }

    public User(String userId, String userName, String userPassword, String userEmail){
        this.userId=userId;
        this.userName=userName;
        this.userPassword=userPassword;
        this.userEmail=userEmail;
    }
    public User(){

    }
}

3、MyBatis

<resultMap id="BaseResultMap" type="">
    <id column="USER_ID" jdbcType="VARCHAR" property="userId"/>
    <result column="USER_NAME" jdbcType="VARCHAR" property="userName"/>
    <result column="USER_PASSWORD" jdbcType="VARCHAR" property="userPassword"/>
    <result column="USER_EMAIL" jdbcType="VARCHAR" property="userEmail"/>
</resultMap>

4、查询结果

[
    {"userId":"1","userName":"大明","userPassword":"1","userEmail":"daming@"},
    {"userId":"2","userName":"二明","userPassword":"2","userEmail":"erming@"}
]