mybatis中association的column传入多个参数值

顾名思义,association是联合查询。

在使用association中一定要注意几个问题。文笔不好,白话文描述一下。

1:


<association property="fncg_PD_QRY_MANAGE" column="###" select="###" />

fncg_PD_QRY_MANAGE 是哪来的?看红色部分,


public class FNCG_PD_QRY extends BasePO{
private String COD_FN_ENT;
private String COD_PD_LINE;
private String ID_GRP_PD;
private String NUM_TARF;
private String ID_IF_TARF_EXTID;
private String IND_MAIN_INTL_TARF;
private String NAM_TARF;
private String COD_ISO_CCY;
…………
private FNCG_PD_QRY_MANAGE fncg_PD_QRY_MANAGE;

public FNCG_PD_QRY_MANAGE getFncg_PD_QRY_MANAGE() {
return fncg_PD_QRY_MANAGE;
}

public void setFncg_PD_QRY_MANAGE(FNCG_PD_QRY_MANAGE fncg_PD_QRY_MANAGE) {
this.fncg_PD_QRY_MANAGE = fncg_PD_QRY_MANAGE;
}

2:<association property="fncg_PD_QRY_MANAGE" column="###" select="###"
/>

column如果传多个参数怎么写?


<association property="fncg_PD_QRY_MANAGE" column="{COD_FN_ENT=COD_FN_ENT,COD_PD_LINE=COD_PD_LINE,ID_GRP_PD=ID_GRP_PD,NUM_TARF=NUM_TARF}" select="sql123" />

那么sql123怎么接收这4个值?


    <select id="sql123" parameterType="java.util.Map" resultMap="com.cvicin.products.productManage.fngg.mapper.poRes.FNCG_PD_QRY_MANAGE">
SELECT * FROM FNCG_PD_QRY_MANAGE WHERE COD_FN_ENT = #{COD_FN_ENT} AND COD_PD_LINE = #{COD_PD_LINE} AND ID_GRP_PD = #{ID_GRP_PD} AND NUM_TARF = #{NUM_TARF}
</select>

注意:

parameterType一定要是 java.util.Map ,否则会出现什么“there is no setter ### in ###” 我记不太清具体的错误信息了。

mybatis中association的column传入多个参数值,布布扣,bubuko.com

时间: 2024-11-20 22:45:45

mybatis中association的column传入多个参数值的相关文章

myBatis中 collection 或 association 联合查询 中column 传入多个参数值

下面是一个树形结构表自连接 联合查询 Demo <resultMap id="BaseResultMap"  type="com.maidan.daas.entity.AccoSysmanResource" >    <id column="pid" property="pid" jdbcType="INTEGER" />    <result column="cre

@Param注解在mybatis中的使用以及传入参数的几种方式(转)

第一种: Dao层的方法 <span style="font-size:12px;">Public User selectUser(String name,String password);</span> 对应的Mapper.xm <select id="selectUser" resultMap="BaseResultMap"> select * from user_user_t where user_nam

查询中mybatis的if判断里传入0

1.传入的是long 或者 Integer类型 ,<if test="id != null "> 但是id传值为0时(前提是id对应的类型为long 或者 Integer,String型无此问题),发现并没有执行if里的sql,因为在mybatis中会自动把0当成null,所以if判断为false,如果要传值为0时判断为true,只要将判断为空串的判断去掉即可 2.传入string类型,   <if test="id !=null and id !=''&q

mybatis中传入String类型参数的问题

1. 出现的问题 需求是想写一个按公司名字查询公司列表的功能,最开始的代码如下 Dao层接口如下 @MyBatisDao public interface OfficeDao extends TreeDao<Office> { List<Office> findCompanyNameList(String name); } mybatis的xml代码: <select id="findCompanyNameList" parameterType="

mybatis 中 sql 映射文件 select 标签以及 入 resultMap 标签的应用

1.自定义某个 javabean 的封装规则: 注:可以看到,select 标签中引用了 定义好的 resultMap 的值.resultMap 标签中的 type 为javabean 类型,id 为唯一标识.id 子标签定义主键(这样定义底层会有优化.)column 属性为字段名,property 属性为字段值. 注:可以看到测试结果没有出现问题,说明代码没有错误. 2.自定义某个 javabean 的级联属性封装: a.准备工作:mysql 数据库中,在之前 tbl_employees 表的

mybatis中的关联对象查询

方式1(嵌套查询): 在本类的mapper映射配置文件中的ResultMap标签中使用association子标签,对关联对象的属性进行关联 例如:User中关联Department(多对一) ----------User的mapper映射配置文件---------<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Map

mybatis中many2one

上一章我们讲到,如果说hibernate是面向对象为主,关系为辅,那么在mybatis中则是着重考虑的是关系模型,换句话说,如果对象模型设计的不好,就会很容易的感觉到实现的难度. 首先来看看最简单的单向many2one: 建立对象: public class Customer {     private Long id;     private String name; } public class Orders {     private Long id;     private String

mybatis中的resultMap 的高级映射

引用:https://www.cnblogs.com/yansum/p/5774873.html Mybatis 高级结果映射 ResultMap Association Collection 在阅读本文章时,先说几个mybatis中容易混淆的地方: 1. mybatis中的列不是数据库里的列而是查询里的列,可以是别名(如 select user_name as userName,这时column='userName' property="userName") 2.Mysql中使用自增

在Mybatis中使用注解@多个参数查询

@Select("SELECT * FROM wc_homework WHERE organization_id=#{classId} ORDER BY createtime DESC LIMIT #{start},#{count}") @Results({ @Result(column = "course_id", property = "course_id"), @Result(column = "homework_id"