Установка условий программно в предложении where с использованием перехватчиков Ibatis - PullRequest
0 голосов
/ 10 марта 2020

Читая о перехватчиках в Ibatis (https://programmer.help/blogs/paging-through-mybatis-interceptor.html), мне интересно, есть ли лог c для создания условий в предложении "где" обновления sql и в заданных полях того же обновления sql с перехватчиками. Я видел получение необработанных sql и выполнение некоторых подстрок с получением предложения where ... Разве нет другого способа более программно сделать это? Это было бы что-то вроде установки этой логики c в перехватчике для полей "field2" и "field4" в следующих sql:

 <update id="updateOperation" parameterType="SomeClass">
  UPDATE
    TABLE 1 SET        
    FIELD1= #{field1},


    <if test="field2!= null">        
        ,FIELD2= #{field2}
    </if>


    WHERE
    FIELD3 = #{field3} 
    <if test="field4!= null">        
       AND FIELD4= #{field4}
    </if>
</update>  
...