ibatis中的like用法

sweat89 2012-12-01 12:38:51
比如:
select * from emp where title like '%$title$%'
能查出结果,但是你懂得,有sql injection。

换这种:
select * from emp where title like '%' || #title# || '%'

日志打印出来的SQL是:
select * from emp where title like '%' || ? || '%'

在线等。。。
...全文
190 5 打赏 收藏 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sweat89 2012-12-01
  • 打赏
  • 举报
回复
引用 3 楼 Whu_benluobo 的回复:
select * from emp where title like '%$title$%' 能查出结果,但是你懂得,有sql injection。 ibatis不会有SQL注入 楼主写的就是对的 就这么用没问题的
好像会有注入的哦。。
sweat89 2012-12-01
  • 打赏
  • 举报
回复
呵呵,找到原因了。 我用的是mysql,而mysql的字符串连接操作是用concat而非 ||
Whu_benluobo 2012-12-01
  • 打赏
  • 举报
回复
select * from emp where title like '%$title$%' 能查出结果,但是你懂得,有sql injection。 ibatis不会有SQL注入 楼主写的就是对的 就这么用没问题的
sweat89 2012-12-01
  • 打赏
  • 举报
回复
引用 1 楼 xingfuzhuzi1314 的回复:
我就是用的select * from emp where title like '%' || #title# || '%' ,LZ你不能查询出结果吗? sqlid的参数类型,一般都是Map,或者StringJava code??123456789101112131415<select id="getAddressPoolConfigCount" resultClas……
我的参数不是MAP,是parameterClass,按理说它会调用VO的getTitle方法取值吧。跟参数无关吧
xingfuzhuzi1314 2012-12-01
  • 打赏
  • 举报
回复
我就是用的select * from emp where title like '%' || #title# || '%' ,LZ你不能查询出结果吗? sqlid的参数类型,一般都是Map,或者String
<select id="getAddressPoolConfigCount" resultClass="Integer"
		parameterClass="Map">
		select count(*) from TMS_ADDRESS_POOL_CONFIG tapc, SYS_CITY
		sc,SYS_PROVINCE sp where tapc.PROVINCE_ID = sp.PROVINCE_ID and
		tapc.CITY_ID = sc.CITY_ID
		<isNotEmpty prepend="AND" property="provinceId">
			tapc.PROVINCE_ID like '%' || #provinceId#|| '%'
		</isNotEmpty>
		<isNotEmpty prepend="AND" property="cityId">
			tapc.CITY_ID like '%' || #cityId#|| '%'
		</isNotEmpty>
		<isNotEmpty prepend="AND" property="configFlag">
			tapc.CONFIG_FLAG like '%' || #configFlag#|| '%'
		</isNotEmpty>
	</select>
内容概要:本文围绕基于电感电容电流环PI与前馈补偿矩阵构造的跟网型储能变流器,开展dq坐标系下的阻抗理论建模与Simulink仿真对比研究。通过建立储能变流器在dq域的数学模型,设计包含电感电流内环、电容电流中间环和电压外环的多环控制结构,并引入前馈补偿矩阵以提升系统的动态响应能力和稳定性。在此基础上,采用小信号分析法推导系统的输出阻抗模型,构建完整的dq域阻抗理论框架,并利用Simulink平台搭建高保真仿真模型进行频域扫频验证,实现理论建模与仿真结果的精确对比,深入分析控制参数对系统阻抗特性的影响规律,揭示其在抑制并网系统振荡、提升稳定性方面的关键作用,为新能源并网系统的稳定性分析与优化设计提供坚实的理论支撑和技术路径。; 适合人群:具备电力电子、自动控制理论基础,从事新能源发电、储能系统、微电网或电力系统稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握跟网型储能变流器在dq域的阻抗建模方法;②理解多环控制与前馈补偿对系统阻抗特性的影响机制;③实现理论阻抗模型与Simulink仿真扫频结果的对比验证,支撑并网稳定性分析。; 阅读建议:学习者应结合控制理论与电力电子变换器知识,重点关注数学推导与仿真建模的一致性,建议动手复现Simulink仿真模型并进行参数敏感性分析,以深化对阻抗重塑机理的理解。

67,535

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧