Mybatis框架的mapper映射文件中编写的sql不识别<,>这些符号,解决方法,使用特殊符号转译

< <= > >= &
&lt; &lt;= &gt; &gt;= &amp;
<![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 &gt;= #{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>

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐