Mybatis的动态拼接条件

官网的例子永远是最好的,切记切记!!
拼接条件

    "select_asset_where">
        <if test="accountType != null and accountType.size != 0" >
            and 
            "accountType" item="param" separator="OR" open="(" close=")">
                a.account_type = #{param}
            
        if>
    

条件查询

<select id="selectAssetByCondition"
                parameterType="com.zemcho.controller.asset.dto.AssetConditionDto"   resultMap="AssetCondtitionResultMap">
        SELECT reg_code, asset_name, asset_type, metering_units, use_info, 
                expect_end_date, regist_man, regist_date, account_type, fee_item, 
                finance_bill_date, user, user_account, keeper, checker, 
                buyer, school_addr, account_book, acquire_way, asset_use_way, 
                write_off_date, asset_status_1, store_place, orginal_value, net_value, 
                number_value
        FROM tb_asset_regist_d a
        <if test="assetDepInfo != null" >
            , cfg_asset_dep_info b
        if>
        <if test="assetTypeInfo != null" >
            , cfg_asset_type_info c
        if>
        <where>
            <include refid="select_asset_where">include>
        where>
select>

批量插入

 
    
    <insert id ="insertBulk" parameterType="java.util.List" >
        <selectKey resultType ="java.lang.Integer" keyProperty= "id"
                order= "AFTER">
            SELECT LAST_INSERT_ID()
        selectKey >
        insert into `tb_basic_treatment_d`
        (<include refid="Base_Column_List" />,LOAD_TIME)
        values
        <foreach collection ="list" item="item" index= "index" separator =",">
            (
            #{item.name},
            #{item.teacherNumber},
            #{item.idNumber},
            #{item.year},
            #{item.annualWageIncomeYuan},
            #{item.fiveInsuranceAGold},
            #{item.loadTime}
            )
        foreach >
    insert >

普通查询

 <select id="selectByReaderNum" parameterType="string" resultMap="BaseResultMap">
    select 
    "Base_Column_List" />
    from tb_library_borrower_d
    where reader_id = #{num,jdbcType=VARCHAR} limit 1
  select>

你可能感兴趣的:(java,mybatis)