mybatis一对一,一对多,字段重复

1、一对一,association和javaType

复制代码
    <resultMap type="com.example.ProdTask" id="ProdTaskMapWithDInvChkTask">
        <result property="taskCateg" column="ProdTask_CATEG" jdbcType="VARCHAR"/>
        <result property="taskNo" column="ProdTaskTASK_NO" jdbcType="VARCHAR"/>
        <association property="taskData" javaType="com.example.dyc.myofbatis.DInvChkTask">
            <result property="taskId" column="TASK_ID" jdbcType="VARCHAR"/>
            <result property="taskNo" column="TASK_NO" jdbcType="VARCHAR"/>
        </association>
    </resultMap>

    <select id="queryByTaskNoWithDInvChkTask" resultMap="ProdTaskMapWithDInvChkTask">
        select
        <include refid="Base_Column_List_ProdTask"/>, <include refid="Base_Column_List_DInvChkTask"></include>
        from T_PROD_TASK ProdTask left join D_INV_CHK_TASK d on ProdTask.TASK_NO = d.TASK_NO
        where ProdTask.TASK_NO = #{taskNo}
    </select>

2、一对多,collection和ofType

复制代码
    <resultMap type="com.example.ProdTask" id="ProdTaskMapWithDInvChkTask">
        <result property="taskCateg" column="ProdTask_CATEG" jdbcType="VARCHAR"/>
        <result property="taskNo" column="ProdTaskTASK_NO" jdbcType="VARCHAR"/>
        <collection property="taskData" ofType="com.example.dyc.myofbatis.DInvChkTask">
            <result property="taskId" column="TASK_ID" jdbcType="VARCHAR"/>
            <result property="taskNo" column="TASK_NO" jdbcType="VARCHAR"/>
        </collection >
    </resultMap>

3、字段名重复问题

可以采用取别名的方式,对应的resultmap中column需要取别名。

4、参数映射

都采用@Param(),避免出问题

相关推荐
zmzmzmalo3 小时前
Linux ELF文件加载与内存管理揭秘
linux·网络·数据库
chuan.bai6 小时前
Java RAG 实战(第 11 篇):RAG 知识工作台网页
java·开发语言·人工智能
0x538 小时前
网站通信(一)
java
Terra.K8 小时前
Java异常学习[特殊字符]
java·开发语言·学习
葡萄城技术团队10 小时前
InfluxDB 2\.x 深度解析:核心架构、Flux 函数与制造业落地指南(三)
java·开发语言·架构
Super 含10 小时前
Android 启动优化(五):线程、GC 与 IO 为什么会拖慢启动?
java·服务器·数据库
counting money10 小时前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
ltl10 小时前
向量检索引擎选型:决策树、RAG 回链与开放问题
数据库
坚持学习前端日记11 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
灯澜忆梦11 小时前
【MySQL17】进阶篇 | InnoDB引擎
数据库·mysql