dao层的代码:
public interface SupplierMapper extends BaseMapper<SupplierDbo>{
/*List<SupplierDbo> getAllSupplier(@Param("type") String type,
@Param("cooperStatus") Integer cooperStatus,
@Param("name") String name,
@Param("supplierNo") String supplierNo);*/
List<SupplierDbo> getAllSupplier(@Param("supplierDbo") SupplierDbo supplierDbo,@Param("goodsClassDbo") GoodsClassDbo goodsClassDbo);
}
传入的参数为两个实体类SupplierDbo、GoodsClassDbo
mapper中的代码:
<select id="getAllSupplier" resultType="java.util.Map">
SELECT s.name,s.supplier_no,s.address,s.contacts,s.phone_number,
s.contact_begin_date,s.contact_period,s.period_type,s.cooper_status,
s.licence,s.permission,s.settle_cycle ,s.bank_account,s.bank_name,
gc.class_name
FROM busi_supplier s LEFT JOIN busi_supplier_rel_goods sg ON s.supplier_no = sg.supplier_no
LEFT JOIN busi_goods_class gc ON gc.id = sg.goods_class_id
WHERE 1=1
<if test="goodsClassDbo.className != null and goodsClassDbo.className != ''">
AND gc.class_name = #{goodsClassDbo.className}
</if>
<if test="supplierDbo.cooperStatus != null">
AND s.cooper_status = #{supplierDbo.cooperStatus}
</if>
<if test="supplierDbo.name != null and supplierDbo.name != ''">
AND s.name = #{name}
</if>
<if test="supplierDbo.supplierNo != null and supplierDbo.supplierNo != ''">
AND s.supplier_no = #{supplierDbo.supplierNo}
</if>
</select>
dao层中使用@Param,然后mapper中使用@Param中的参数对相应的参数取值。

原文地址:https://www.cnblogs.com/huangzhe1515023110/p/9276100.html

关于mybatis对实体类参数绑定参数的问题的更多相关文章

  1. map集合类型/实体类类型的参数

    map集合类型的参数 若mapper接口中的方法需要的参数为多个时,此时可以手动创建map集合, 将这些数据放在map中 只需要通过${}和#{}访问map集合的键就可以获取相对应的值,注意${}需要 ...

  2. Mybatis中实体类属性与数据库列表间映射方法介绍

               这篇文章主要介绍了Mybatis中实体类属性与数据列表间映射方法介绍,一共四种方法方法,供大家参考.         Mybatis不像Hibernate中那么自动化,通过@Co ...

  3. Mybatis插入实体类字段为关键字解决方案

    1. Mybatis插入实体类字段为关键字解决方案 1.1. 前言 可能你插入字段为关键字时报如下错误,且字段名不适合改变 You have an error in your SQL syntax; ...

  4. WPF——传实体类及绑定实体类属性

    public class User: private string _User; public string User1 { get { return _User; } set { _User = v ...

  5. Mybatis 中实体类的编写

    一个实体类对应一个数据表 一个属性对应一个字段 默认情况下类名和属性名都采用 “下划线转驼峰” 的命名方式.但具体采用什么样的命名方式并不重要(方式一致即可),在后面使用这些对象的时候,可以通过 re ...

  6. 泛型实体类List<>绑定到repeater

    后台代码: private void bindnewslist() { long num = 100L; List<Model.news> news = _news.GetList(out ...

  7. 使用generatorConfig工具自动生成mybatis的实体类以及dao接口和映射文件

    1:数据准备 创建一个数据库表 CREATE TABLE `logininfo` ( `id` ) NOT NULL AUTO_INCREMENT, `username` ) DEFAULT NULL ...

  8. Mybatis 使用Mybatis时实体类属性名和表中的字段名不一致

    开发中,实体类中的属性名和对应的表中的字段名不一定都是完全相同的,这样可能会导致用实体类接收返回的结果时导致查询到的结果无法映射到实体类的属性中,那么该如何解决这种字段名和实体类属性名不相同的冲突呢? ...

  9. Mybatis为实体类定义别名typeAliases

    以新增一个用户为例子,原UserMapper.xml配置如下: <insert id="addUser" parameterType="main.User" ...

随机推荐

  1. Window sevice +OWIN+webapi

    webapi正常都托管在iis上,这里引入owin,将其托管在window服务上. 第一步:创建一个服务,这里就不多描述. 第二步:引入OWIN 2.1引入bll 2.2加入api路由配置 publi ...

  2. centos7 RPM命令安装操作

    RPM 安装操作 命令: rpm -i 需要安装的包文件名 举例如下: rpm -i example.rpm 安装 example.rpm 包: rpm -iv example.rpm 安装 exam ...

  3. Android开发 如何最优的在Activity里释放资源

    前言 当前你已经入门Android开发,开始关注深入的问题,你就会碰到一个Android开发阶段经常碰到的问题,那就是内存泄漏. 其实大多数Android的内存泄漏都是因为activity里的资源释放 ...

  4. 概率dp——处理分母为0的情况hdu3853

    很水的题,但要注意的是必须处理分母为0的情况 #include<bits/stdc++.h> using namespace std; ; ; ],e[maxn][maxn]; int r ...

  5. http://wiki.ros.org/navigation/Tutorials/RobotSetup

    http://wiki.ros.org/navigation/Tutorials/RobotSetup

  6. C语言结构体初始化方法

    早上苏凯童鞋问我这个问题来着,写在这里. 我了解到的C中结构体初始化的方法大概有三种. 如这里我定义了一个结构体: typedef struct node { int x, y; }Node; 第一种 ...

  7. 使用docker安装redis

    1.安装docker .检查内核版本,必须是3.10及以上 [root@localhost ~]# uname -r .安装docker [root@localhost ~]# yum install ...

  8. Django框架中session存储到redis中的配置

    本文链接:https://blog.csdn.net/linqunbin/article/details/94786313————————————————版权声明:本文为CSDN博主「linqunbi ...

  9. [AHOI2014/JSOI2014]骑士游戏

    题目 思博贪心题写了一个半小时没救了,我也没看出这是一个\(spfa\)来啊 设\(dp_i\)表示彻底干掉第\(i\)只怪物的最小花费,一个非常显然的事情,就是对于\(k_i\)值最小的怪物满足\( ...

  10. NoSQL SimpleDB