`
xs.cctv
  • 浏览: 22172 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

iBATIS中使用List做参数生成in语句

阅读更多

 

iBATIS中使用List做参数生成in语句
 

 有时候需要使用List做参数,将List的内容用来生成含"in"的SQL语句,sqlMap写法如下:

 

[java] view plaincopy
  1. <select id="getHdRiskByCodes" parameterClass="java.util.ArrayList" resultMap="hdRiskResult">  
  2.   select * from hd_risk hr  
  3.            where hr.code in  
  4.              <iterate open="(" close=")" conjunction=",">  
  5.                #codeList[]#  
  6.              </iterate>  
  7.            order by hr.code  
  8. </select>  

 

其中codeList是DAO实现中命名的List实例名字,后面的“[]”必加。

 

分享到:
评论

相关推荐

    ibatis教程 输入参数详解

    参数可以通过`#{}`语法在SQL语句中引用,ibatis会自动进行类型转换和值绑定。 ### resultMap `resultMap`是ibatis中一个重要的概念,用于描述SQL查询结果与Java对象之间的映射关系。通过`resultMap`可以实现复杂的...

    ibatis3.0中in的用法

    #### 四、ibatis3.0中使用`IN`的关键元素——`&lt;foreach&gt;` 在ibatis3.0中,为了实现动态SQL的功能,引入了`&lt;foreach&gt;`标签来处理集合数据。下面详细介绍`&lt;foreach&gt;`标签的属性及其用法: 1. **`item`**: 表示当前...

    iBatis的动态SQL语句

    iBatis框架中的动态SQL主要通过XML映射文件来实现,它允许在映射文件中使用各种标签来控制SQL语句的生成过程。这些标签包括但不限于`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`、`&lt;trim&gt;`、`&lt;where&gt;`、`&lt;set&gt;`、`...

    ibatis中iterate的例子

    在iBatis中,`&lt;iterate&gt;`标签是一个非常实用的功能,它允许我们处理集合数据,如数组、List或Map等,进行循环遍历并生成动态SQL语句。下面我们将详细探讨`&lt;iterate&gt;`标签的用法及其示例。 `&lt;iterate&gt;`标签的主要...

    ibatis list

    `&lt;iterate&gt;`标签是iBatis中用于循环遍历集合的一种机制,它允许你在SQL语句中动态生成参数列表,这对于批量操作(如批量插入、更新或删除)尤为重要。该标签支持多种属性,包括`property`、`conjunction`、`open`、`...

    动态ibatis查询语句配置

    在IT行业中,数据库操作是...4. `&lt;set&gt;`标签:在更新语句中使用,用于构建SET子句,同样会处理多余的逗号。 5. `&lt;foreach&gt;`标签:用于迭代集合,如数组、列表等,生成多个相同结构的子句。比如,用于IN查询: ```xml ...

    ibatis使用及环境搭建文档

    2. **参数映射**: 使用`&lt;param&gt;`标签将Java对象的属性与SQL中的参数关联。 3. **结果映射**: 使用`&lt;resultMap&gt;`标签定义结果集的映射规则,将数据库查询结果转换为Java对象。 4. **事务管理**: Ibatis可以配合Spring...

    常用ibatis配置

    在文档中,展示了如何使用标签来生成IN子句,以便于将一个集合中的值动态地插入到SQL语句中。 7. 截止日期:在业务逻辑中,常常需要查询截止到某个特定日期或时间点的数据。iBatis配置允许使用动态SQL标签来根据...

    ibatis入门

    在 `select` 标签中,你可以使用 `&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;` 和 `&lt;where&gt;` 等标签来构建动态 SQL,根据传入参数的不同组合生成不同的 SQL 语句。 5. **单对象查询** 当需要查询单个对象时,可以...

    Ibatis中文版教程

    然后,在Java代码中使用SqlSession对象执行此查询: ```java // 创建SqlSessionFactory SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(sqlMapConfigReader.getResourceAsStream(...

    ibatis使用指南

    Ibatis支持动态SQL,可以在XML映射文件中使用`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`等标签,根据条件动态生成SQL语句。 7. **参数处理** 使用`@Param`注解指定参数名,配合`#{}`占位符,可以实现复杂的...

    使用的iBatis 简单例子

    在这个“使用的iBatis简单例子”中,我们将深入探讨如何配置和使用iBatis进行数据库交互。 首先,iBatis的核心组件包括XML配置文件、SQL映射文件以及SqlSessionFactory。XML配置文件用于定义数据源、事务管理器等...

    ibatis基本操作数据库

    在iBatis中,我们通常通过XML配置文件或者注解来定义SQL语句,并使用占位符(例如#{}或${})来传递参数。 1. **参数绑定**:iBatis使用占位符(#{})进行参数绑定,可以防止SQL注入攻击。当使用#{paramName}时,...

    ibatis批量存储

    例如,当需要批量插入多条数据时,可以将数据集放入List中,然后在SQL语句中使用iterate标签遍历这个List。iterate标签的基本语法是`(" close=")" conjunction=","/&gt;`,其中`property`指定了集合属性的名称,`open`...

    ibatis中 $ 于 # 的 区别

    - **例子**:比如我们有一个参数`user_id_list`,其值为`1,2`,使用`#{user_id_list}`时,MyBatis会将其作为一个整体传递,最终生成的SQL语句将是 `in(?)`,这里的`?`是一个占位符,表示一个待填充的数据,而这个...

    ibatis 框架原理实现

    通过MapperFactoryBean,Ibatis会生成Mapper接口的动态代理,使得可以在Java代码中直接调用接口方法,而底层自动完成SQL的执行和结果的映射。 7. **事务管理**: Ibatis提供了一种简单的事务管理方式,可以在...

    Ibatis资料ibatai sql map iBATIS使用$和#的一些理解

    在使用iBATIS(现已被MyBatis取代)进行数据库操作时,我们常常需要传递参数到SQL语句中。在iBATIS中,有两种主要的方式来处理这些参数:使用`$`和`#`。这两种方式在不同的场景下有不同的效果。 首先,让我们来看看...

    ibatis 使用

    在IT行业中,Ibatis是一个非常流行的持久层框架,它提供了SQL映射功能,使得开发者能够更灵活地控制SQL语句的编写,同时减轻了与Java集合对象和结果集映射的痛苦。本篇文章将深入探讨Ibatis的使用,包括其核心概念、...

    IBatis常用操作封装

    4. **动态SQL**:`IBatis`的动态SQL功能非常强大,可以在映射文件中编写条件语句,如`if`, `choose`, `when`, `otherwise`等,根据传入参数动态生成SQL。这有助于减少代码重复,提高灵活性。 5. **事务管理**:`...

Global site tag (gtag.js) - Google Analytics