Mybatis框架的mapper映射文件中编写的sql不识别<,>这些符号,解决方法,使用特殊符号转译
< | <= | > | >= | & |
< | <= | > | >= | & |
<![CDATA[ < ]]> | <![CDATA[ <= ]]> | <![CDATA[ > ]]> | <![CDATA[ >= ]]> | <![CDATA[ & ]]> |
案例:查询学生成绩大于等于80的学生信息
<select id="selectStudent" parameterType="com.lyj.domain.Student" resultMap="StudentMap">
select
<include refid="Base_Column_List"/>
from link_student
where 1=1
<if test="student.score!= null">
and score >= #{student.score}
</if>
</select>
上面的>号是编译不通过的,需要用特殊符号处理
<select id="selectStudent" parameterType="com.lyj.domain.Student" resultMap="StudentMap">
select
<include refid="Base_Column_List"/>
from link_student
where 1=1
<if test="student.score!= null">
and score >= #{student.score}
</if>
</select>
<select id="selectStudent" parameterType="com.lyj.domain.Student" resultMap="StudentMap">
select
<include refid="Base_Column_List"/>
from link_student
where 1=1
<if test="student.score!= null">
and score <![CDATA[ >= ]]> #{student.score}
</if>
</select>