1. 删除: 根据主键删除
<!--根据id来删除一条数据,delete中不允许有返回值-->
<!--id和Dao层方法名一样-->
<delete id="deleteAssessmentByOid" parameterType="Long" >
delete from Ecc_tcm.prm_skill_assess where OID=#{oid}
</delete>
public int deleteAssessmentByOid(Long oid);
2. 修改: 根据主键修改
<!--根据id来更新一条数据,update中无返回值-->
<update id="updateAssessment" parameterType="com.zte.prm.common.bo.authentication.SkillAssessStoreBO">
update
Ecc_tcm.prm_skill_assess t
<set>
<!-- 多个修改的值-->
<if test="personName != null and personName !=''">
t.PERSON_NAME = #{personName}
</if>
</set>
where t.OID = #{oid}
</update>
public int updateAssessment(SkillAssessStoreBO skillAssessStore);
3. 条件查询:
<!--根据页面输入的条件来进行批量查询-->
<!--返回值类型是List中的实体类-->
<select id="getAssessmentList" parameterType="com.zte.prm.common.bo.authentication.SkillAssesQueryBO"
resultType="com.zte.prm.common.bo.authentication.SkillAssessStoreBO">
select t.OID as oid,
t.PERSON_NAME as personName,
t.IS_EFFECT as isEffect,
t.INTERVIEW_DATE as interviewDate
from Ecc_tcm.prm_skill_assess t where 1=1
<!--Oracle的模糊查询-->
<if test="personName != null and personName !=''">
and t.PERSON_NAME like '%'||#{personName}||'%'
</if>
<!--是否有效匹配的是数字精确查询-->
<if test="isEffect != null and isEffect !=''">
and t.IS_EFFECT = #{isEffect}
</if>
<!--日期匹配:前段组件传过来的可以是带时分秒的-->
<!-- 在xml文件中<,>,& ,", '不能直接存储,必须转移为实体,如"<", “>”才能被保存进xml文档,
<!CDATA[[]]>的意思是遇到 <= ,>=这些运算符按照原文本写入-->
<if test="interviewDateStart!=null and interviewDateStart!=''">
and t.INTERVIEW_DATE <![CDATA[ >= ]]> #{interviewDateStart}
</if>
order by t.INTERVIEW_DATE desc
</select>
public List<SkillAssessStoreBO> getAssessmentList(SkillAssesQueryBO skillAssesQuery);