sql中cdata(mybatis sql转义符号怎么写)

本文目录
- mybatis sql转义符号怎么写
- mybatis同一个参数在同一条sql中多次使用如何处理或者说在父查询和子查询中使用同一个where条件怎么办
- 为什么会报错,sql语句在mapper.xml里的写法有什么不同吗
- 关于ORACLE的SQL语句拼写问题
mybatis sql转义符号怎么写
1、在xml的sql语句中,不能直接用大于号、小于号要用转义字符
如果用小于号会报错误如下:
org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup.
转义字符
2、使用
《!》标记的sql语句中的《where》 《if》等标签不会被解析
mybatis同一个参数在同一条sql中多次使用如何处理或者说在父查询和子查询中使用同一个where条件怎么办
最简单的直接设置resultType=“map”,得到的就是一个List《Map《String,Object》》
每一个Map的key就是查询结果的列名,也就是表的字段名。当然sql语句中最好as一下
复杂一点可以自定义一个resultMap标签
《resultMap id="result" type="java.util.Map"》
《result property="c1" column="column1"/》
《result property="c2" column="column2"/》
《/resultMap》
其中result可以自定义,select标签中的resultMap="result",和上面的resultMap标签的id对应
property设置的是自定义的字段名称,也就是结果集中每一个Map的key
column设置查询结果的字段名称
然后通过
for(List《Map《String,Object》 map:list){
map.get("c1");//获取c1对应的字段的值
。。。
}
为什么会报错,sql语句在mapper.xml里的写法有什么不同吗
mybatis的sqlmap是xml格式的文件,你的代码里出现了小于号,而小于号是xml的组成部分,要用CDATA包裹住才不报错。
示例代码:
《select id="selectMonth" parameterType="java.util.HashMap" resultType="com.bilysice.chemicalPark.entity.ReFactor"》
select
rf.item_id as itemId
, rf.device_id as deviceId
, rf.station_id as stationId
, rf.seq_date as seqDate
, rf.average_value averageValue
from re_factor rf
《where》
《if test=" itemId !=null"》and rf.item_id = #{itemId}《/if》
《if test=" deviceId !=null"》and rf.device_id = #{deviceId}《/if》
《if test=" station_id !=null"》
and rf.station_id in
《foreach item="s" collection="stationIds" index="index" open="(" separator="," close=")"》
#{s}
《/foreach》
《/if》
《if test=" stationId !=null"》and rf.station_id = #{stationId}《/if》
《if test=" srhTimeBegin !=null"》and rf.seq_date 《!》 #{srhTimeBegin}《/if》
《if test=" srhTimeEnd !=null"》and rf.seq_date 《!》 #{srhTimeEnd}《/if》
《/where》
《/select》
关于ORACLE的SQL语句拼写问题
取小数可以用round,比如我这个例子,保留两位小数就是
select a,round(a/(select sum(a) from test_0407),2) from test_0407
希望能对你有所帮助

更多文章:
excel表格中,如何匹配单元格中含有通配符“*“?EXCEL SUBSTITUTE 通配符
2026年9月20日 21:45
tcpip有多少个协议(tcpip参考模型中应用层协议常用的有)
2026年1月18日 15:45
qq聊天音乐代码(qq发信息有音乐符号,点一下它出来一首歌)
2025年12月24日 17:15
SAP是一个什么行业_sap是干什么的?南京雨润集团sap岗位怎么样
2026年8月6日 18:15
ajax提交form表单失败(layui的以ajax提交表单不成功问题)
2026年9月3日 04:15
php运行环境安装(server2008如何部署iis+php+mysql运行环境)
2025年9月24日 02:45
simulink安装包下载(谁有关于光热发电的simulink仿真或其他仿真)
2026年3月2日 01:30
大漠易语言模块(大漠插件易语言模块为什么分辨率变化了.鼠标移动到坐标就不对了)
2026年3月12日 03:45

















