Mybatis:Tag name expected

mapper文件中写sql语句时提示Tag name expected,找到原因是因为xml不识别<号需要用特定转义符来表示<号。

<select id="selectHavingOrtherResultNotYetProcessed" resultMap="BaseResultMap"  >
    select
    <include refid="Base_Column_List" />
    from mark_result
    where length(ai_json) < 180 and ai_json not like '{"gmtModified%' AND
    ai_json not like '{}' and code is null
  </select>

 

 

 

 

在 XML 中,一些字符拥有特殊的意义。

如果您把字符 "<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。

这样会产生 XML 错误:

为了避免这个错误,用实体引用来代替 "<" 字符,如下:

  <message>if salary <1000 then</message> 需要改为<message>if salary &lt; 1000 then</message>

在 XML 中,有 5 个预定义的实体引用:


注意:在 XML 中,只有字符 "<" 和 "&" 确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。

posted @ 2020-05-22 17:17  大数据从业者FelixZh  阅读(1354)  评论(0编辑  收藏  举报