XML转移符

XML转移符

这种方式看起来将不会太直观

符号 转义 说明
> > 大于
< &lt; 小于
& &amp;
' &apos; 单引号
" &quot; 双引号

<![CDATA[ ……]]>

这种方式看起来就会直观很多

  1. 大于等于 <![CDATA[ >= ]]>
  2. 小于等于 <![CDATA[ <= ]]>

示例

<select id="getAgentList" resultType="com.wht.demo.dao.vo.AgentVo">  
	select 
		t.node_id as nodeId,
		t.host_name as hostName,
		t.address_ip as addressIp
	from 
	t_node_agent t 
	<where> 
		<if test='appId !=null and appId != "" '>
			and t.app_id= #{appId}  
		</if>
		<if test='osType!=null and osType!= "" '>
			and t.os_type= #{osType}  
		</if>
		<if test="createTime!= null and createTime!= ''">
		     and create_time >= #{createTime}
		</if>
	</where>
</select> 

这种动态SQL编译就会报错,XML解析不了>号,按照上面转移符改造即可。

<select id="getAgentList" resultType="com.wht.demo.dao.vo.AgentVo">  
	select 
		t.node_id as nodeId,
		t.host_name as hostName,
		t.address_ip as addressIp
	from 
	t_node_agent t 
	<where> 
		<if test='appId !=null and appId != "" '>
			and t.app_id= #{appId}  
		</if>
		<if test='osType!=null and osType!= "" '>
			and t.os_type= #{osType}  
		</if>
		<if test="createTime!= null and createTime!= ''">
		     and create_time <![CDATA[ >=]]> #{createTime}
		</if>
	</where>
</select> 
posted @ 2023-05-03 15:58  红尘过客2022  阅读(113)  评论(0编辑  收藏  举报