• mybais 的映射文件,需要从poviderDao.java 的一个 方法 public getProvidersFactors(参数 ) 中传入多个参数到providerDao.xml中的两种方法


    方法一:

      直接以对象的整体的形式去传入到xml文件中,当然这时候用过满足的条件是:你所想传入的所有的参数,应该都是包含在一个对象中的,此时可以以对象的形式去传入到xml中

    如下图示例

    实体类
        private String id;
        private String companyName;
        private String managerName;
        private String phone;
        private String address;
        private String type;
        
    #ProviderDao.java文件  传入的是一个对象
    
    
    public List<Provider> getProvidersFactors(Provider provider);
    xml映射文件 ProviderDao.xml
    <select id="getProvidersFactors" parameterType="com.thinkgem.jeesite.modules.goodsmanage.entity.Provider" resultType="com.thinkgem.jeesite.modules.goodsmanage.entity.Provider">
        select
        <include refid="providerColumns"></include>
        from ma_provider p
        <where>
            1=1
            <if    test="id !=null and id !=''">
                and p.id = #{id}  
            </if>
            <if    test="companyName !=null and companyName !=''">
                and p.companyName = #{companyName} 
    </if> <if test="address !=null and address !=''"> and p.address = #{address} </if> </where> </select>    
    

    方法二:

      直接的传入多个参数,但是此时需要的是@Param注解的配合使用(但是这种方式只适合传输两个到三个参数的时候,当参数的数目过多的时候,此方法太麻烦了!!)

    示例

    providerDao.java文件  传入的是多个参数

    public List<Provider> getProvidersFactors(@Param("id")String id ,@Param("companyName")String companyName,@Param("address ")String address );

    providerDao.xml文件

    <select id="getProvidersFactors" parameterType="com.thinkgem.jeesite.modules.goodsmanage.entity.Provider" resultType="com.thinkgem.jeesite.modules.goodsmanage.entity.Provider">
        select
        <include refid="providerColumns"></include>
        from ma_provider p
        <where>
            1=1
            <if    test="id !=null and id !=''">
                and p.id = #{id}  
            </if>
            <if    test="companyName !=null and companyName !=''">
                and p.companyName = #{companyName} 
    </if> <if test="address !=null and address !=''"> and p.address = #{address} </if> </where> </select>    
  • 相关阅读:
    OC block声明和使用
    OC 内存管理(retain和release)
    OC @class关键字
    OC typedef(起别名)
    OC static 和函数
    OC static 和变量
    java【基础】日期操作
    java【基础】正则表达式
    理解String拼接,+运算符重载的实际效果
    swoole的EventLoop学习
  • 原文地址:https://www.cnblogs.com/isme-zjh/p/12611549.html
Copyright © 2020-2023  润新知