我只是大自然的搬运工! ————————————————————————————————————————————————————————————————————————————-@晗大大
MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。
(1)接口中的方法
public List
public void updateEmp(Emp emp);
public List<Emp> getEmpsByIds(@Param("ids") List<Integer> ids);
public void addEmps(@Param("emp") List<Emp> emp);
(2)Mapper文件
if标签 + where标签
<select id="getEmps" resultMap="emp">
SELECT *FROM emp
<where>
<if test="id != null">
id = #{id}
</if>
<if test="lastName != null">
and last_name = #{lastName}
</if>
<if test="geder != null">
and gender = #{geder}
</if>
</where>
</select>
choose,when 有一个when标签成立 ,其余的when标签中的内容不再执行。
set标签foreach标签
foreach标签 批量插入
INSERT INTO emp(last_name,gender,email)
VALUES
(#{emps.lastName},#{emps.geder},#{emps.email})