Ibatis $与#的区别
来源:互联网 发布:燕十八php教程全套 编辑:程序博客网 时间:2024/04/28 08:02
在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区别为:#可以进行数据类型匹配,而$不能进行数据类型匹配.
例如:
select * from table where id = #id# 其中如果字段id为字符型,那么#id#表示的就是字符型,如果id为整型,那么#id#就是整型.
select * from table where id = $id$ 其中如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成: select * from table where id = '$id$'
例如:
select * from table where id = #id# 其中如果字段id为字符型,那么#id#表示的就是字符型,如果id为整型,那么#id#就是整型.
select * from table where id = $id$ 其中如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成: select * from table where id = '$id$'
查询防注入用#,会导致底层使用PreparedStatement.
select * from table where id = #id#
等效于
prepareStement = stmt.createPrepareStement("select * from table where id = ?");
prepareStement.setString(1,'abc');
字符串拼接用$.
select * from $tableName$
等效于
StringBuffer sb = new StringBuffer(256);
sb.append("select * from").append(tableName);
sb.toString();
$: 用来标识Sql语法的一部分,比如: select * from $tablename$.
#: 用来标识Sql语句数据部分,比如: Oracle的绑定变量.
- Ibatis $与#的区别
- ibatis 的 $ 与 # 区别
- Ibatis $与#的区别
- 【ibatis】ibatis 中 $与#的区别
- ibatis的$与#的区别
- hibernate 与 ibatis 的区别
- Ibatis中的#与$的区别
- ibatis中$与#的区别
- Hibernate与Ibatis的区别
- ibatis 中 $与#的区别
- ibatis中$与#的区别
- ibatis中#与$的区别
- ibatis中#与$的区别
- IBATIS中 $与#的区别
- ibatis 中 $与#的区别
- ibatis 中 $与#的区别
- mybatis 与ibatis的区别
- ibatis 中 $与#的区别
- 阶段性总结
- 工作中需要一种可以带N个系统的自动还原的GHOST
- phpdesigner 注册序列号
- 初学iphone开发总结
- 手机视频编解码 群友lihao的博文 视频开发
- Ibatis $与#的区别
- LC.exe” exited with code -1
- [原创]目前最完整的:visual studio 6.0(特别是vc6.0)无法安装之迷
- Automation服务器不能创建对象
- 重构--封装结构
- Ubuntu环境变量设置
- GridView1 的textbox操作
- shell脚本:一次读取文件的一行,并输出
- In-place Merge Sort (原地归并排序)