`

ibatis传入多个参数

 
阅读更多

一般情况下,我们用ibatis都是传入一个参数,这个参数可以为一个类,一个字符串,一个整型等等,例如:
<select id="selectpw" parameterClass="String" resultClass="String">
            select pwd from userinfo
            where userid=#userid#
        </select>
在方法体里可以用:password = (String)sqlMapClient.queryForObject("selectpw", userid)得到password。
但是有时候我们却想从前面传入两个或多个参数,这时候怎么办呢? -----------------用Map:
在方法体里:我们把多个参数存放在map里,然后在前面获得它:
Map map = new HashMap();
        map.put("userid", userid);
        map.put("name", name);
cardList = (List)sqlMapClient.queryForList("findByName", map);
在SQL语句中:
<select id="findByName" parameterClass="java.util.Map" resultClass="Card">
            select * from cardinfo where userid=#userid# and name like '$name$'
        </select>
这样就可以将多个参数传过去了。
分享到:
评论

相关推荐

    ibatis教程 输入参数详解

    标题:ibatis教程 输入参数详解 描述:ibatis教程 输入参数详解 ibatis快速入门 标签:ibatis list 部分内容:这段部分提供了ibatis用户指南的警告,关于从文档复制代码的问题,以及ibatis的概述、如何开始使用...

    ibatis的多参数查询.doc

    在使用ibatis(现称为MyBatis)进行数据库操作时,经常会遇到需要处理多个输入参数的情况。然而,默认情况下ibatis只支持单个输入参数,这在实际开发中往往难以满足需求。本文将详细介绍如何在ibatis中实现多参数...

    ibatis多表查询

    `#value#`是Ibatis的占位符,代表传递给SQL查询的参数。 `sqlMapConfig.xml`文件是Ibatis的全局配置,它引用了`book.xml`,并设置了一些Ibatis的配置选项,如缓存和动态代理的启用。 综上所述,Ibatis通过配置文件...

    ibatis与存储过程(带输出参数的应用)

    需要注意的是,虽然这里使用了`selectOne`,但实际上存储过程可能返回多个结果集或者无结果,这时可以使用`sqlSession.callableStatement()`方法,然后调用`CallableStatement`的相关方法来处理。 在实际项目中,...

    ibatis总结 ibatis ibatis ibatis ibatis

    - 避免在`WHERE`子句中使用多个条件或`OR`操作符,而是应该使用`IN`操作符或者`UNION ALL`合并多个查询。 3. Struts、Spring与Ibatis的集成: - Struts作为MVC框架,主要负责视图与控制器的交互。在项目中,`...

    ibatis demo,ibatis例子,ibatis示例

    本地缓存作用于单个SqlSession,而二级缓存则可以在多个SqlSession之间共享,但需要注意并发控制和数据一致性问题。 8. **插件支持**:Ibatis允许开发者编写自定义插件,通过拦截器模式对SqlSession或Executor的...

    Ibatis

    2.3 参数绑定:调用 SqlSession 的方法时,传入参数对象或 Map,Ibatis 会自动将参数映射到 SQL 语句中。 2.4 结果处理:查询操作返回的结果会被自动映射到 Java 对象,更新操作返回受影响的行数。 **3. 动态 SQL*...

    ibatis中输入输出各种类型的参数分析及#与$区别

    在iBatis中,输入输出参数类型的支持非常丰富,几乎涵盖了Java中常见的所有基本数据类型及其封装类,同时也支持自定义JavaBean类型的传递。这使得开发者在处理数据库操作时具有很高的灵活性。 - **基本数据类型**: ...

    ibatis源码,ibatis源码 ibatis源码 ibatis源码

    `org.apache.ibatis.executor.parameter.ParameterHandler`实现了这个功能,它根据传递的参数对象,动态地设置SQL的参数。 七、插件机制 iBatis的插件机制允许用户自定义拦截器,实现对Executor、StatementHandler...

    ibatis多表查询过程

    iBatis的动态SQL功能非常强大,可以通过`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`、`&lt;where&gt;`、`&lt;set&gt;`等标签编写条件语句,根据传入参数动态生成SQL。 ### 8. 使用`&lt;foreach&gt;`标签 `&lt;foreach&gt;`标签用于遍历...

    ibatis api 帮助文档+IBATIS 开发文档

    1. **SQL映射文件**:每个XML文件代表一个数据库表或视图,包含多个SQL语句。这些语句可以是静态的,也可以是动态的,后者允许基于输入参数动态生成SQL。 2. **动态SQL**:IBATIS提供了一系列元素(如if、choose、...

    ibatis基本操作数据库

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

    ibatis

    Ibatis 是一个优秀的Java持久层框架,它提供了一个SQL映射框架,使开发者能够将SQL语句与Java代码分离,从而实现数据访问层的解耦合。Ibatis 的设计目标是简化开发工作,减少JDBC代码量,提高开发效率,并且在数据库...

    iBatis执行非查询语句(CRUD,函数和过程)

    iBatis的一大特性是动态SQL,它允许在XML映射文件中编写条件语句,根据传入的参数动态构建SQL。这极大地提高了SQL的灵活性,减少了重复代码。 五、事务管理 iBatis支持自动和手动的事务管理。在Java代码中,可以...

    ibatis 的 jar包

    5. **结果集映射**:iBATIS能自动将查询结果映射到Java对象,包括单一结果、多个结果集以及复杂的一对多关联映射。 6. **参数映射**:iBATIS可以将Java方法的参数自动映射到SQL的参数,减少了代码量,提高了开发...

    ibatis入门

    Ibatis 支持基于多个条件的复杂查询。在 `select` 标签中,你可以使用 `&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;` 和 `&lt;where&gt;` 等标签来构建动态 SQL,根据传入参数的不同组合生成不同的 SQL 语句。 5. **单...

    ibatis的一个小例子

    2. **映射语句**:SQL语句被映射到Java方法,通过传入参数,可以实现动态SQL执行,提高代码可读性和可维护性。 3. **结果映射**:Ibatis自动将数据库查询结果转换为Java对象,减少了手动类型转换的工作量。 4. **...

    ibatis.Net

    通常,这个版本的Ibatis.Net已经比较老,最新版本可能提供了更多的特性和优化。不过,对于学习和理解Ibatis.Net的基本工作原理,旧版本仍然很有价值。 2个HTML使用说明文件应该包含Ibatis.Net的安装指南、配置示例...

    ibatIS调用存储过程

    4. **调用存储过程**:在Service或DAO层,通过SqlSession对象的`selectOne`或`selectList`方法(根据存储过程是否有多个返回结果)调用Mapper接口中的方法,传入必要的参数。注意,对于输出参数,需要在调用前初始化...

Global site tag (gtag.js) - Google Analytics