`
y806839048
  • 浏览: 1133086 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

mybatis 遍历map

 
阅读更多

mybatis 遍历map

java

Map<String,Object> filem = new HashMap<String,Object>();

filem.put("param", fileMap);

//tbCusFirmChgMapper.saveDataMapAFFIX2(filem);

tbCusFirmWebMapper.saveDataMapWeb(filem);

 

<insert id="saveDataMapWeb" parameterType="map" >

    INSERT INTO TB_CUS_FIRM_AFFIX_CHG

    <foreach collection="param.keys" item="k" open="(" close=")" separator=",">   

        ${k} 

   </foreach> 

     VALUES 

    <foreach collection="param.keys" item="k" open="(" close=")" separator=",">   

    <if test="null != param[k]">    

        #{param[${k}]}  

    </if>  

   </foreach> 

  

  </insert>

  <update id="updateDataMapWeb" parameterType="map">

    update TB_CUS_FIRM_WEB set

    <foreach collection="param.keys" item="k" separator=","> 

       ${k}=#{param[${k}]}

    </foreach>

     where CUSTOMER_KEY=#{cusKey}

  </update>

分享到:
评论

相关推荐

    SpringBoot+Mybatis,返回Map的时候,将Map内的Key转换为驼峰的命名

    `underscoreToCamelCase`方法则负责将下划线分隔的字符串转换为驼峰命名,通过遍历并替换每个部分的首字母为大写实现。 在SpringBoot中,你可以在Mybatis的Mapper接口方法中使用这个工具类。例如,当从数据库查询到...

    Map和Bean灵活转换工具类

    这些工具类会遍历Map的每个键值对或Bean的每个属性,通过反射找到对应的setter方法并调用,从而完成数据的转换。 需要注意的是,由于反射的使用,这些工具类在提高灵活性的同时也可能带来一些性能开销。因此,在...

    将Map转换成Java实体

    接着,遍历实体类的所有声明字段(不包括继承的字段),设置每个字段的值为Map中对应的键值。注意,由于Java的封装特性,我们需要通过`setAccessible(true)`使私有属性可访问。 这个方法虽然简单,但已经能够满足...

    mybatis-3.0.4源码

    2. Map参数:当参数复杂时,可以使用Map将参数键值对传入,通过`@Param`注解指定参数名。 五、缓存机制 MyBatis提供了一级缓存和二级缓存,可以提高数据访问速度。一级缓存是SqlSession级别的,同一SqlSession内的...

    Mybatis多参数查询与列表查询不同方式实现

    在Mapper XML文件中,可以通过`&lt;foreach&gt;`标签遍历Map的键值对。例如,查询用户根据用户名和年龄: ```xml SELECT * FROM user WHERE username = #{username} AND age = #{age} ``` 在Java代码中,创建Map...

    关于MyBatis参数传入#{index}的问题的解决方案【源码】

    在源码层面,MyBatis在解析XML映射文件时,会遍历所有的#{index}并查找对应的参数。如果使用了@Param或Map,MyBatis可以通过注解或键值对找到参数值。当使用#{index}时,如果没有提供键值对,MyBatis将无法匹配到...

    map转化为list

    一种常见的方式是创建一个新的List,然后遍历Map的entrySet(),将每个键值对作为新List的一个元素添加进去。如果需要分别获取键和值,可以创建两个List,一个存放键,一个存放值。 描述中提到的博客链接可能详细...

    MyBatis动态拼接SQL

    5. `&lt;foreach&gt;`标签:用于遍历集合或数组,生成对应的SQL片段,如IN语句。这是动态SQL中非常常用的一个标签。 ```xml DELETE FROM table WHERE id IN (" separator="," close=")"&gt; #{item} ``` 在实际开发...

    mybatis-3.5.4.pdf

    通过使用简单的XML或注解进行配置,可以将原始类型、Map接口和Java POJO(Plain Old Java Objects)映射到数据库记录,极大地简化了JDBC代码编写、参数设置及结果集处理等工作。 #### 1.2 文档贡献与翻译 文档鼓励...

    SQL.rar_MyBatis3DynamicSql_dynamic mybatis_mybatis_mybatis Dyna

    5. `&lt;foreach&gt;`标签:用于遍历集合,构建IN或NOT IN子句,也可以用于动态生成ORDER BY或GROUP BY等。 在实际应用中,我们通常会在Mapper接口的XML配置文件中使用这些动态SQL元素。例如,可以创建一个根据多个条件...

    测试mybatis里foreach用法

    在MyBatis中,`&lt;foreach&gt;`标签是一个非常重要的元素,它主要用于动态SQL语句的构建,尤其是在处理集合数据类型如List、Array、Map时。`&lt;foreach&gt;`标签的使用可以极大地提高代码的可读性和可维护性,避免了传统的字符...

    MyBatis传入多个参数的问题

    `foreach`标签用于遍历`list`中的元素,并生成相应的`in`子句。 #### 五、多参数传递之注解方式 使用`@Param`注解可以更清晰地标识多参数。例如: ```java public AddrInfo getAddrInfo(@Param("corpId") int ...

    mybatis Mapper.xml中传参多选 字符串形式逗号分隔 AND中拼接OR.rar

    在实际开发中,你还需要在对应的Java接口和实现类中编写对应的方法,将前端传递的参数正确地绑定到Map对象中,并调用Mybatis的SqlSession执行查询。 总的来说,Mybatis提供了一套灵活的机制来处理动态SQL,包括处理...

    Jsp+Servlet+MyBatis完成分页查询

    6. **更新JSP页面**:最后,JSP页面接收到响应数据后,使用JSTL或其他标签库来遍历并展示数据。同时,还可以生成分页导航链接,使用户能够方便地浏览其他页面。 通过以上步骤,我们便成功地使用JSP、Servlet和...

    学习手册 “玩转”Java系列 — Mybatis

    - 使用Map或JavaBean作为方法参数,Mybatis会自动映射。 7. **结果映射** - `@Result`和`@Results`注解可以定义复杂结果映射,处理一对多、一对一等关系。 - `@One`和`@Many`注解用于关联映射,简化了多对一和多...

    MyBatis框架笔记1

    例如,使用、、、等标签实现条件判断,标签用于循环遍历集合。这样,可以在不改变Java代码的情况下修改SQL逻辑,提高了代码的可维护性。 总之,MyBatis通过提供简洁的API和灵活的SQL构造,极大地提升了Java开发者...

    SpringBoot +Mybatis +POI导入、导出Excel文件

    3. 遍历工作簿中的工作表,进一步处理每个单元格的数据,将数据转化为业务模型对象。 4. 使用Mybatis的SqlSession,执行SQL语句将这些数据插入到数据库中。 导出Excel文件的步骤则相反: 1. 根据业务需求,查询...

    Mybatis3系列课程8-带参数查询

    这种情况下,可以使用`&lt;foreach&gt;`标签遍历Map,生成对应的SQL条件。 7. 使用Example类:Mybatis-Plus等扩展库提供了Example类,用于快速构建复杂的查询条件。通过设置Example类的Criteria,可以方便地实现带参数的...

    mybatis笔记

    - **使用 Map 传参**:Map 的 key 必须与 SQL 中的 #{key} 相对应。 - **使用 @Param 传参**:为参数添加注解,提高代码可读性。 #### 八、SQL 语法差异 - **# 和 $ 的区别**: - **#**:将传入的数据当作字符串...

    mybatis对数据库基本操作

    5. **结果映射**: MyBatis 支持自动将数据库查询结果映射到 Java 对象,包括单个对象、List 对象、Map 结果等。可以使用 `resultType` 指定返回类型,或使用 `resultMap` 定义复杂的映射规则。 6. **缓存机制**: ...

Global site tag (gtag.js) - Google Analytics