目录
2、where if条件判断不是字符串的话只需要判断!=null即可
1、where if条件判断字符串的话用如下写法:
<if test='a!= null and a!= "" and a=="1"'> and a in('1','3') </if>
2、where if条件判断不是字符串的话只需要判断!=null即可
<if test="userId != null "> and user_id = #{userId} </if>
3、批量更新
根据数据库表的主键判断是否存在,存在即更新不存在则新增
<update id="updateA" parameterType="java.util.List">
insert into A (id, name, phone)values
<foreach collection="list" item="item" separator="," index="index">
(#{item.id},#{item.name},#{item.phone})
</foreach>
ON DUPLICATE KEY UPDATE name= VALUES(name),phone= VALUES(phone);
</update>
4、关于传递参数
①可直接用List<A> aList传参
<foreach collection="list" item="item" separator=",">
</foreach>
②@Param("aList") List<Map> aList传参
<foreach collection="aList" item="item" separator=",">
</foreach>
③Long[] aIds传参
<foreach collection="array" item="aId" open="(" separator="," close=")"> #{aId} </foreach>
5、tkmybatis返回自增主键
@GeneratedValue(generator = "JDBC",strategy = GenerationType.IDENTITY)
@Id
private Integer subjectId;