java mapper 的 xml讲解

xml 复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.bnc.s12.mapper.GoodaCateDTOMapper">
    <!--<resultMap id="GoodaCateDTOMapper" type="com.bnc.s12.model.GoodaCateDTO">
        <id property="id" column="id"></id>
        <result property="goods" column="goods"></result>
        <result property="category_id" column="category_id"></result>
        <result property="category_name" column="category_name"></result>
    </resultMap>-->

    <select id="getGoodsList" resultType="com.bnc.s12.model.GoodaCateDTO" >
        SELECT * from my_goods as g LEFT JOIN my_category as c on g.category_id = c.category_id
    </select>
</mapper>

select 标签里面,映射的它是以 resultType 或者是 resultMap 属性。但这两个属性最好不要同时使用。因为如果同时使用,优先走的 resultMap 属性。也就是说,如果两个同时定义了,那么其实他走的也是 resultMap 属性。

resultMap属性的值 指向的是 resultMap 标签 id的值,或者说,在 select 标签中 resultMap 的值需要跟 resultMap 标签中 id 的值一样。

而 select 标签的 id 对应的就是 service 类中的 方法名

resultType 属性定义的,它指向的是 实体类。或者,我们说是数据库的字段。大概的代码如下

java 复制代码
package com.bnc.s12.model;

import lombok.Data;

@Data
public class GoodaCateDTO {
    private int id;
    private String goods;
    private String category_id;
    private String category_name;
    //这儿还可以定义数据表中没有的字段
}
相关推荐
一 乐1 小时前
电影院|基于springboot + vue电影院购票管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·电影院购票管理管理系统
恼书:-(空寄1 小时前
JVM GC 日志分析 + 常见 GC 场景 + 实战参数调优
java·jvm
消失的旧时光-19431 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦
杨凯凡3 小时前
【012】图与最短路径:了解即可
java·数据结构
比特森林探险记3 小时前
【无标题】
java·前端
椰猫子3 小时前
Javaweb(Filter、Listener、AJAX、JSON)
java·开发语言
朝新_4 小时前
【Spring AI 】核心知识体系梳理:从入门到实战
java·人工智能·spring
一 乐4 小时前
旅游|基于springboot + vue旅游信息推荐系统(源码+数据库+文档)
java·vue.js·spring boot·论文·旅游·毕设·旅游信息推荐系统
我命由我123454 小时前
Android 开发中,关于 Gradle 的 distributionUrl 的一些问题
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
橙露4 小时前
SpringBoot 全局异常处理:优雅封装统一返回格式
java·spring boot·后端