1. select用于数据查询操作
<select id="selectUserInfo" parameterType="int" resultType="map">
??select * from user_info where id=#{keyId}
</select>
2. insert用于数据保存操作
<insert id="insertUserInfo" parameterType="map" useGeneratedKeys="true" keyProperty="keyId">
??insert into user_info (
userName,
userSex
??)values(
?? #{userName},
?? #{userSex}
??)
</insert>
3. update用于数据更新操作
<update id="updateUserInfo" parameterType="map">
??update ?user_info
??set userName=#{userName}
??where id=#{keyId}
</update>
4. delete用于数据删除操作
<delete id="selectUserInfo" parameterType="int">
??delete ?from user_info
??where id=#{keyId}
</delete>
5. resultMap是SQL返回与实体类映射关系信息
<resultMap id="userInfoMap" type="User">
??<result property="user_name" column="userName"/>
??<result property="user_sex" column="userSex"/>
</resultMap>
<select id="selectUserInfo" parameterType="int" resultType="userInfoMap">
??select
??userName,
??userSex
??from user_info
??where id=#{keyId}
</select>
6. sql用于定义可重用的 SQL 代码片段,以便在多个SQL语句中使用。 参数可以静态地(在加载的时候)确定下来,并且可以在不同的 include 元素中定义不同的参数值。
<sql id="userColumns"> ${alias}.userName,${alias}.userSex</sql>
<select id="selectUserInfo" resultType="map">
??select
????<include refid="userColumns"><property name="alias" value="t1"/></include>,
????<include refid="userColumns"><property name="alias" value="t2"/></include>
??from user_info ?t1
??left join user_info_copy t2
</select>