封裝結果集
<resultMap id="BaseResultMap" type="com.fs.model.system.ExamQuestion">
<id column="title_id" jdbcType="INTEGER" property="titleId" />
<result column="title_name" jdbcType="VARCHAR" property="titleName" />
<result column="title_score" jdbcType="INTEGER" property="titleScore" />
<result column="title_type" jdbcType="INTEGER" property="titleType" />
<result column="exam_name" jdbcType="VARCHAR" property="examName" />
<!-- 對象 -->
<association property="answer" javaType="com.fs.model.system.ExamAnswer">
<result column="answer_id" jdbcType="INTEGER" property="answerId"/>
<result column="answer_right" jdbcType="VARCHAR" property="answerRight"/>
<result column="title_id" jdbcType="INTEGER" property="titleId"/>
</association>
<!-- 集合 -->
<collection property="options" ofType="com.fs.model.system.ExamOptions">
<result column="option_id" jdbcType="INTEGER" property="optionId"/>
<result column="option_desc" jdbcType="VARCHAR" property="optionDesc"/>
<result column="option_flag" jdbcType="VARCHAR" property="optionFlag"/>
<result column="title_id" jdbcType="INTEGER" property="titleId"/>
</collection>
</resultMap>
返回自增主鍵
<insert id="addQuestion" parameterType="com.fs.model.system.ExamQuestion">
<selectKey keyProperty="titleId" resultType="int" order="AFTER">
SELECT LAST_INSERT_ID()
</selectKey>
INSERT INTO exam_question VALUES (#{titleId}, #{titleName}, #{titleScore}, #{titleType},"隨機考試")
</insert>
動態sql語句(列表篩選條件)
<select id="queryRecordByPage" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from exam_record
<where>
<if test="userName != null and userName != ''">
and user_name = #{userName}
</if>
<if test="startDate != null and startDate != ''">
and start_time >= CONCAT(#{startDate},' 00:00:00')
</if>
<if test="endDate != null and endDate != ''">
and start_time <= CONCAT(#{endDate},' 23:59:59')
</if>
<if test="examState != null and examState != ''">
and exam_state = #{examState}
</if>
</where>
</select>