mapper.xml 使用大于号、小于号示例

xml 复制代码
<mapper namespace="com.example.EmployeeMapper">

    <!-- 更新employee_absent_resign_statistics表中的pre_work_date -->
    <update id="updatePreWorkDate">
        <![CDATA[
        UPDATE employee e1
        JOIN employee e2
            ON e2.statistics_date < e1.statistics_date
            AND e2.emplid = e1.emplid
        SET e1.pre_work_date = e2.statistics_date
        WHERE NOT EXISTS (
            SELECT 1
            FROM employee_absent_resign_statistics e3
            WHERE e3.statistics_date < e1.statistics_date
              AND e3.emplid = e1.emplid
              AND e3.statistics_date > e2.statistics_date
        )
        ]]>
    </update>

</mapper>

<!CDATA\[]>:为了避免 XML 中的特殊字符(如 < 和 >)被当作 XML 标签处理,我们使用 <!CDATA\[]>

来包裹 SQL 查询,这样就可以直接写 SQL 语句而不受 XML 特殊字符的限制。

SQL语句本身:直接将原来的 SQL 语句放在 <!CDATA\[]> 中,保持原有的 SQL 逻辑不变。

相关推荐
RainCityLucky7 小时前
Java Swing 自定义组件库分享(十六)
java·笔记·后端
微学AI7 小时前
把时间序列真正用起来:TimechoAI 使用与时序分析实战
数据库·人工智能·大模型
爱跳舞的烤冷面7 小时前
自学嵌入式第N天(Linux篇——文件编程)
java·开发语言·前端
cspttty7 小时前
管理类专业证书含金量排名
数据库
莫逸风7 小时前
【AgentScope 2.0】10-总结回顾详解
java·ai·agent·springai·agentscope
怪奇云呼军7 小时前
闪电智能VoiceAgent 如何管理呼入、接听、桥接和挂断状态?
java·前端·网络·数据库·人工智能
richard_yuu7 小时前
JSON vs XML vs 二进制:3种序列化终极选型
xml·c++·qt·学习·json
Escalating_xu7 小时前
【Linux】进程间通信:从匿名管道、FIFO 到共享内存、消息队列与信号量
java·linux·面试
IT机器猫8 小时前
RabbitMQ基础二
java·spring boot·分布式·spring cloud·log4j·rabbitmq·springamqp
秋田君8 小时前
QT_实战TCP 聊天程序说明文档以及实现
数据库·qt·tcp/ip