`
sbpya
  • 浏览: 610040 次
  • 性别: Icon_minigender_1
  • 来自: 杭州,长沙
社区版块
存档分类
最新评论

ibatis参数

阅读更多
原型参数
<select id="select1" parameterClass="java.lang.String"resultClass="AppLog">
    select
      ID as id,
      TYPE as type,
      DESCR as descr
    from APP_LOG
    where ID = #id#
</select>
  
sqlMapper.queryForObject("select0", id);
Map类参数
<select id="select2" parameterClass="java.util.HashMap"resultClass="AppLog">
    select
      ID as id,
      TYPE as type,
      DESCR as descr
    from APP_LOG
    where ID = #id#
</select>   
map.put("id", id);
AppLog log = (AppLog) sqlMapper.queryForObject("select0", map);
对象参数
   <select id="select3" parameterClass="AppLog"resultClass="AppLog">
    select
      ID as id,
      TYPE as type,
      DESCR as descr
    from APP_LOG
    where ID = #id#
</select>
AppLog p=new AppLog();
p.setId(id);
AppLog log = (AppLog) sqlMapper.queryForObject("select3", p);

<select id="select0" resultClass="AppLog">
    select
      ID as id,
      TYPE as type,
      DESCR as descr
    from APP_LOG
    where ID = #id#
</select>
Map参数
map.put("id", id);
AppLog log = (AppLog) sqlMapper.queryForObject("select0", map);
String参数
AppLog log = (AppLog) sqlMapper.queryForObject("select0", id);
对象参数
AppLog p=new AppLog();
p.setId(id);
AppLog log = (AppLog) sqlMapper.queryForObject("select0", p);

 

动态字段、表
<select id="selectd" resultClass="java.util.HashMap" parameterClass="java.util.HashMap" remapResults="true">
    select $fieldList$     
    from $table$
    where ID = #id#
</select>
Map p = new HashMap();
p.put("id", id);
p.put("table","APP_LOG");
p.put("fieldList", "ID,TYPE,DESCR");
Map map = (Map) sqlMapper.queryForObject("selectd", p);
String id1 = (String) map.get("ID");
String type = (String) map.get("TYPE");
String descr = (String) map.get("DESCR");

 

参数映射方式

<parameterMap>字段映射方式
<parameterMap id=”insert-product-param” class=”com.domain.Product”>
    <parameter property=id/>
    <parameter property=”description”/>
</parameterMap>
<insert id=”insertProduct” parameterMap=”insert-product-param”>
    insert into PRODUCT (PRD_ID, PRD_DESCRIPTION) values (?,?)
</insert>
<parameterMap id=”insert-product-param” class=”com.domain.Product”>
    <parameter property=”description” />
    <parameter property=id/>
</parameterMap>
<insert id=”insertProduct” parameterMap=”insert-product-param”>
    insert into PRODUCT (PRD_DESCRIPTION, PRD_ID) values (?,?)
</insert>
parameterMap中属性的顺序与SQL中参数的顺序对应

Inline Parameter Maps
<insert id=”insertProduct” parameterClass=”com.domain.Product”>
    insert into PRODUCT (PRD_ID, PRD_DESCRIPTION)
    values (#id#, #description#)
</insert>
<insert id=”insertProduct” parameterClass=”com.domain.Product”>
    insert into PRODUCT (PRD_ID, PRD_DESCRIPTION)
    values (#id:NUMERIC:-999999#, #description:VARCHAR:NO_ENTRY#)
</insert>
语法
#propertyName# - OR -
#propertyName:jdbcType# - OR -
#propertyName:jdbcType:nullValue#
高级语法
#propertyName,javaType=?,jdbcType=?,mode=?,nullValue=?,handler=?,numericScale=?#
<procedure id=callProcedure parameterClass=com.mydomain.MyParameter>
{call MyProcedure
(#parm1,jdbcType=INTEGER,mode=IN#, #parm2,jdbcType=INTEGER,mode=IN#,
#parm3,jdbcType=DECIMAL,mode=OUT,numericScale=2#)}
</procedure>
分享到:
评论

相关推荐

    ibatis教程 输入参数详解

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

    iBATIS实例小程序

    #### 三、iBATIS参数绑定机制 在上述SQL语句中,可以看到`#acct#`和`#org#`这样的参数绑定方式。这种方式是iBATIS中常见的参数绑定方式之一,表示在执行SQL时,这些占位符会被实际的参数值所替换。 - **#{}**:预...

    sql语句中用问号代替参数

    `)作为参数占位符是一种常见的做法,尤其是在编程语言如Java中与数据库交互时。这种方式被称为预编译语句或参数化查询,它具有重要的安全性和性能优势。 ### SQL参数化查询的概念 参数化查询允许将变量值插入到SQL...

    ibatis的多参数查询.doc

    ### ibatis多参数查询解析 #### 一、引言 在使用ibatis(现称为MyBatis)进行数据库操作时,经常会遇到需要处理多个输入参数的情况。然而,默认情况下ibatis只支持单个输入参数,这在实际开发中往往难以满足需求。...

    ibatis总结 ibatis ibatis ibatis ibatis

    在Ibatis中,参数可以通过`#`或`$`符号传递。例如,`select * from PRODUCT where PRD_CAT_ID = #{value}`中的`#{value}`是预编译参数,能有效防止SQL注入。 总结,Ibatis提供了灵活的SQL映射机制,使得开发人员...

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

    本主题将深入探讨如何在Ibatis中使用存储过程,特别是涉及带有输出参数的存储过程。 Ibatis,由MyBatis的前身发展而来,它是一个轻量级的ORM(对象关系映射)框架,允许开发者编写SQL语句并与Java对象进行绑定,而...

    ibatis demo,ibatis例子,ibatis示例

    5. **参数映射**:Ibatis支持多种方式传递参数,如Map、POJO对象、注解等。例如,使用`@Param`注解可以指定参数名,或者在XML中使用`#{paramName}`来引用参数。 6. **结果映射**:结果映射允许我们将查询结果自动...

    ibatis资料ibatis资料

    2. **动态SQL**: iBATIS允许在XML映射文件中编写动态SQL,可以根据传入的参数改变SQL的结构,极大地提高了SQL的灵活性。 3. **简单易用**: iBATIS的学习曲线相对平缓,开发者可以快速上手,因为它主要关注SQL的执行...

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

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

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

    ### ibatis中输入输出各种类型的参数分析及#与$区别 #### iBatis简介与特点 iBatis作为一款轻量级的Java持久层框架,以其简洁、灵活的特点,在众多框架中占据一席之地。相较于知名的Hibernate框架,iBatis在实现上...

    ibatis api,ibatis文档,ibatis说明文档

    Ibatis,全称为MyBatis,是一个优秀的Java持久层框架,它主要负责SQL映射,将数据库操作与业务逻辑解耦,使得开发者可以更专注于业务逻辑的实现,而无需关心繁琐的SQL语句编写。本篇文章将深入探讨Ibatis API、文档...

    Ibatis

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

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

    **IBATIS API 帮助文档与IBATIS开发文档详解** IBATIS,一个由iBATIS公司开发的开源持久层框架,是Java世界中广泛使用的数据访问接口(DAO)工具。它允许开发者将SQL语句直接写在XML配置文件中,实现了SQL与Java...

    iBATIS-DAO-2.3.4.726.rar_com.ibatis.dao_iBATIS dao 2_iBatis DAO_

    此外,iBATIS还提供了一些辅助工具,如`ParameterMap`用于管理SQL语句的输入参数,`ResultMap`用于处理查询结果的映射,以及`Cache`机制,用于缓存查询结果,提高系统性能。这些工具类使得开发者能够更方便地进行...

    Ibatis入门例子,Ibatis教程

    Ibatis消除了几乎所有的JDBC代码和手动设置参数以及获取结果集的工作,极大地提高了开发效率。在本教程中,我们将通过一个简单的Ibatis入门例子,带你逐步了解并掌握这个强大的框架。 首先,我们需要在项目中引入...

    ibatis教程,ibatis帮助文档

    2. 执行映射的Statement,iBATIS框架创建PreparedStatement,使用参数对象,执行SQL并从结果集中构建返回对象。 3. 返回结果,如果是更新操作,返回受影响的行数;如果是查询,返回单个对象或对象集合。 五、基础...

    ibatis

    2. 参数映射:Ibatis 提供了参数映射机制,可以通过`&lt;parameterMap&gt;`和`&lt;parameter&gt;`标签将Java对象的属性值映射到SQL语句的参数。同时,它还支持简单类型、复杂类型(如Map或自定义对象)的参数传递。 3. 结果映射...

    ibatis 的 jar包

    6. **参数映射**:iBATIS可以将Java方法的参数自动映射到SQL的参数,减少了代码量,提高了开发效率。 【标签】"ibatis jar java" 对于Java开发者来说,正确地引入iBATIS的jar包到项目中是至关重要的。在Java环境中...

    ibatis基本操作数据库

    iBatis并不鼓励直接复制SQL字符串到数据库管理系统(DBMS)进行执行,因为这样会丧失iBatis的一些核心优势,如参数绑定、动态SQL和结果映射等。在iBatis中,我们通常通过XML配置文件或者注解来定义SQL语句,并使用...

    Ibatis 入门经典 实例

    《Ibatis 入门经典 实例》 Ibatis 是一款著名的轻量级 Java 持久层框架,它提供了一种映射 SQL 和 Java 对象的简单方式,从而减轻了开发人员在数据库操作中的工作负担。这篇实例教程将带你深入理解 Ibatis 的核心...

Global site tag (gtag.js) - Google Analytics