ibatis #和$区别(非原创)
在Ibatis中我们使用SqlMap进行Sql查询时需要引用参数,在参数引用中遇到的符号#和$之间的区分为,
#可以进行与编译,进行类型匹配,而$不进行数据类型匹配,例如:
select * from table where id = #id# ,其中如果字段id为字符型,那么#id#表示的就是'id'类型,如果id为整型,那么#id#就是id类型。
select * from table where id = $id$ ,如果字段id为整型,Sql语句就不会出错,但是如果字段id为字符型,那么Sql语句应该写成 select * from table where id = '$id$'
#与$区别:
1.#是把传入的数据当作字符串,如果 order by #field# ,如#field#传入的是id,则sql语句生成是这样,order by "id",这当然会报错..
2.$传入的数据直接生成在sql里,如果 order by $field$ ,如$field$ 传入的是id,则sql语句生成是这样,order by id, 这就对了.
3.$方式一般用于传入数据库对象.例如传入表名. 如果传入动态sql或条件则注意防sql注入
4.#方式一般用于传入插入/更新的值或查询/删除的where条件
$中间的变量就是直接替换成值的
#会根据变量的类型来进行替换
比如articleTitle的类型是string, 值是"标题"的时候
$articleTitle$ = 标题
#articleTitle# = '标题'
分享到:
相关推荐
在本实例中,我们主要探讨的是一个基于"Struct1.2", "Spring1.2" 和 "IBatis2.1.6" 的集成应用。这三个技术都是Java开发中非常重要的框架,它们各自承担着不同的职责,共同构建了一个高效、灵活的企业级应用。 首先...
这是一个用iBator生成iBatis有关代码的例子。 特别说明: Eclipse应该是3.4.1以上版本, 并且安装了iBator插件。否则可用iBator的命令行版本或ant工具。 测试用数据是: CREATE TABLE PERSON( id INTEGER NOT NULL,...
通过XML或注解方式定义数据映射,Ibatis 可以自动处理结果集和参数的映射,简化数据库操作。 **二、Ibatis 的核心组件** 1. **SqlSessionFactory**: SqlSessionFactory是Ibatis的核心工厂类,负责创建SqlSession...
原创性意味着这可能是一个个人或团队的实践成果,而非官方文档,但仍然对于初学者理解和学习框架集成具有很高的参考价值。 在标签"struts2"中,我们可以推断出这个例子的重点在于Struts2的使用,特别是它如何与其他...
包含SqlMapClient里全部方法的介绍,附带了数据库,绝对的原创,本资源绝对的免费 /* * 带参数的queryForMap用法 */ @SuppressWarnings("unchecked") public Map queryForMap(String sql_name, Object ...
基于struts1.3spring2.5ibatis2.3的代码生成器 本程序属于原创 遵守apache2.0协议,对商业友好 请尊重作者著权 使用前请仔细阅读readme.txt
iBatis 提供了数据访问的灵活性和控制权,使得开发者可以避免过度依赖于ORM框架。通过学习iBatis教程,你可以掌握如何配置数据源、编写动态SQL以及处理结果集。 2. **Ionic**:Ionic 是一个开源的HTML5移动应用框架...
【标题】:“A4j 原创小案例+Spring+Hibernate”是一个综合性的IT学习资源,涵盖了多个关键的技术框架,旨在帮助用户理解和实践这些技术的整合应用。 【描述】:“个人做的 小例子 A4j Myfaces JSF Spring ...
- 这个系列包括多个技术文档,例如Spring、Hibernate、ibatis2、Webwork2、CruiseControl等相关指南。 - 所有文档均可从特定网站获取最新更新信息。 3. **Shift to Dynamic: Smalltalk for Java Programmer**: -...
标题中的“OSGI研究笔记1 - Equinox ServletBridge模式下调用Datasource”表明了这篇文章将探讨如何在OSGI(Open Service Gateway Initiative)环境下,利用Equinox的ServletBridge模块来访问和使用DataSource。...
这个项目由作者原创,旨在提供一个实践学习的机会,帮助用户了解和掌握IT领域的相关技术,特别是与电力电子相关的课程内容。不过,需要注意的是,该项目并未针对商业级别的安全性进行优化,主要关注功能实现。 网站...
其实还有更简单的方法,而且是更好的方法,使用合理描述参数和SQL语句返回值的接口(比如IUserOperation.class),这样现在就可以至此那个更简单,更安全的代码,没有容易发生的字符串文字和转换的错误.下面是详细...
笔记会讲解如何使用CXF创建和消费Web服务,包括SOAP和REST接口的实现,以及CXF的配置和调试技巧。 2. **jQuery学习笔记**:jQuery是JavaScript库,简化了DOM操作、事件处理和动画创建。笔记将深入介绍选择器、事件...
最近在学习SSH框架,看到大牛的博文,感觉很有指导...(第二十天)万能框架spring(二)maven结合spring与ibatis 一共27天,感兴趣的朋友可以去http://blog.csdn.net/lifetragedy/article/category/1175320 查看原创文档
ant awt easymock ejb guava hibernate ibatis jackson jsaperreprts java.io java.lang mail java.math java.util xml java java实例 javafx jdbc jfreechart jmeter jogl jpa log4j lucene maven mybatis poi ...