xml文件中特殊字符的转义

前言

在做项目的过程中,将项目中的数据库由原来链接我本地的数据库改为链接服务器的数据库,但是发现修改之后项目启动一直失败,经过查看日志才发现,原来数据库密码解析有问题。因为数据库的密码包含特殊符号,所以解析失败了。

解决方案一:使用CDATA

例如:

<if test="startTime != null" >  
    and l.CREATE_TIME >= #{startTime}  
</if>  
<if test="endTime != null" >  
     and l.CREATE_TIME < #{endTime}   
</if> 

这时这里的> <就会发生解析错误的问题,下面使我们的解决办法:

<if test="startTime != null" >  
    <![CDATA[  
        and l.CREATE_TIME >= #{startTime} 
    ]]>  
</if>  
<if test="endTime != null" >  
    <![CDATA[  
    and l.CREATE_TIME < #{endTime}  
    ]]>  
</if>  

解决方案二:使用转义字符

下面是五个在xml文件中定义好的实体:
在这里插入图片描述

例如:

<if test="startTime != null" >  
    and l.CREATE_TIME >= #{startTime}  
</if>  
<if test="endTime != null" >  
     and l.CREATE_TIME < #{endTime}   
</if> 

转义后:

<if test="startTime != null" >  
    and l.CREATE_TIME &gt;= #{startTime}  
</if>  
<if test="endTime != null" >  
     and l.CREATE_TIME &lt; #{endTime}   
</if> 

结语

其实这个小问题出现在配置数据库的文件中,当时没有联想到是xml文件的问题,一直在搜索数据库配置的相关问题,中间花费掉了不少时间。经过这个事情,我对这些配置文件的理解又深入了一步:其实他们的东西和mybatis的xml文件是一样的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值