作业三

本文深入探讨了MyBatis框架中如何高效处理参数集合,特别是在进行复杂查询时的providerId参数传递。通过示例展示了如何使用foreach标签实现in条件语句的构建,以及如何利用if标签动态拼接SQL条件,确保查询的灵活性与准确性。
部署运行你感兴趣的模型镜像

在这里插入图片描述
在这里插入图片描述

ProviderMapper.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.oupeng.mapper.ProviderMapper">	
<!--    当传的是一个参数(数组类型),collection="Array",这样写是没问题的,
    当传多个参数时,mybatis不知道参数的对应位置,因此collection对应的值应该是参数名称,-->
<select id="getProviderBill" resultType="Bill">
    select * from smbms_bill where providerId in
    <foreach collection="providerId" item="item" open="(" separator="," close=")">
        #{item}
    </foreach>
</select>

`在这里插入图片描述

ProviderMapper.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.oupeng.mapper.ProviderMapper">
<!--    -->
    <select id="getProviderInfo" resultType="Provider">
        select id,proCode,proName,proContact,creationDate from smbms_provider
        <where>
            <if test="proCode!=null">and proCode like concat('%',#{proCode},'%') </if>
            <if test="proName!=null">and proName like concat('%',#{proName},'%')</if>
            <if test="proContact!=null">and proContact like concat('%',#{proContact},'%')</if>
            'endTime'>=creationDate and creationDate>='startTime'
        </where>

    </select>

</mapper>

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值