2
在用于sql select语句的mybatis映射器文件中,我无法在表达式中使用特殊字符(< =)。对于实施例(一个简化的选择):mybatis映射器文件转义字符
<select id="selectMonday" resultType="SheetGameRec">
select ColumnName
from Table
where ColumnName <= 2
order by ColumnName;
</select>
生成以下错误
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException:
### Error building SqlSession.
### The error may exist in Mapper.xml
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper
Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: xx; columnNumber: xx; The content of elements must consist of well-formed character data or markup.
如果我更换< =具有> =或=,映射器文件将工作,虽然这不是选择我想要的。
如何逃避这些特殊字符。我也遇到过其他表达式的问题,例如&。我正在使用mybatis 3.0.2。
谢谢。
您还可以颠倒参数的顺序:2> = ColumnsName – 2015-11-02 13:49:27
另一个选项是编码的字符。例如:colName < 2或colName > 10' – indivisible 2016-10-21 11:50:48