Mybatis使用总结
2023-04-12
1. Mapped Statements collection does not contain value for *.executeSql
原因:xxMapper.xml配置文件和java接口,方法名不匹配。
2. 动态传入纯sql执行:
配置:
注意:默认的编译方式改了(预编译改为非预编译),并且参数接受使用${XXX}方式。
3. 对与CLOB字段的处理:
configuration.xml中配置:
查询时:
AND FCONTENT = #{fcontent,jdbcType=CLOB,typeHandler="org.springframework.orm.ibatis.support.ClobStringTypeHandler"}
插入和更新时:使用上述配置
4. 需要在xml文件中使用<号的时候如何处理:
一种方法:在某一个类中定义一个属性,使其值为'<',然后parameterType指定为这个类,其符号用其代替。比如我有一个Page类,定义一个属性 startOperator = "<=" 然后调用:${page.startOperator}
另一种方法:采用转义字符直接替换<号为 < >号为>即可。
注:${name},官方解释这种方式,Mybatis不会修改或者转义字符串。但是这样不安全,存在潜在的注入攻击。因此不应该允许用户直接输入此类字段,或者通常自行转义并检查。
本文仅代表作者观点,版权归原创者所有,如需转载请在文中注明来源及作者名字。
免责声明:本文系转载编辑文章,仅作分享之用。如分享内容、图片侵犯到您的版权或非授权发布,请及时与我们联系进行审核处理或删除,您可以发送材料至邮箱:service@tojoy.com




