1.获取自增主键
<insert id="saveUser" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
</insert>
2.批量插入foreach
<!--collection:必填,值为要迭代循环的集合类型
入参是List类型的时候,collection属性值为list
入参是Map类型的时候,collection属性值为map的key值
item:每一个元素进行迭代时的别名
index:索引的属性名,在集合数组情况下值为当前索引值,当迭代对象是map时,值为map的key
open:整个循环内容的开头字符串
close:整个循环内容的结尾字符串
separator:每次循环的分隔符
-->
<insert id="saveUser">
insert into user (name, pwd, head_img, phone, create_time) values
<foreach collection="list" item="l" separator=",">
(#{l.name}, #{l.pwd}, #{l.headImg}, #{l.phone}, now())
</foreach>
</insert>
3.转义字符
-
为什么要转义字符:由于MyBatis的SQL写在XML里面,有些SQL的语法符号和XML里面的冲突
<![CDATA[ >= ]]>
4.SQL片段
<sql id="base_field">id, name</sql>
<select id="selectUserByUserId" resultType="User">
select <include refid="base_field"/> from user where id = #{id}
</select>