mybatis返回类型map时如何将key大写转为小写

 更新时间:2021年06月29日 14:39:37   作者:GastonPeng  
这篇文章主要介绍了mybatis返回类型map时实现将key大写转为小写操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

亲测:

SELECT DEPTNO as "deptno",DEPTNAME,DEPTGRADE,PARENTDEPT 
      FROM VMGR_DEPT
      ORDER BY DEPTGRADE,DEPTNO

别人案例:

  <select id="selectBlogRetHashMap" parameterType="int" resultType="map">  
        SELECT id AS "id", title AS "title", content AS "content" FROM Blog WHERE id = #{id}  
    </select> 

纯java实现方法(推荐):

public class Snippet {
	public static Map<String, Object> transformUpperCase(Map<String, Object> orgMap) {
		Map<String, Object> resultMap = new HashMap<>();
 
		if (orgMap == null || orgMap.isEmpty()) {
			return resultMap;
		}
 
		Set<String> keySet = orgMap.keySet();
		for (String key : keySet) {
			String newKey = key.toLowerCase();
			newKey = newKey.replace("_", "");
 
			resultMap.put(newKey, orgMap.get(key));
		}
 
		return resultMap;
	}
}

mybatis映射map返回的全是大写

解决方法

在查询的字段后加别名

user_id as “userId”

注意:别名必须加双引号

<select id="queryMaxPriceAAndUser" parameterType="java.lang.String" resultType="java.util.HashMap">
    SELECT A.SELL_PRICE as "price", B.USER_ID as "userId"
      FROM QLYY_SELL_AUCTION_RECORD A, QLYY_SELL_APPLY B
     WHERE A.SELL_PRICE = (SELECT MAX(SELL_PRICE)
                             FROM QLYY_SELL_AUCTION_RECORD
                            WHERE SELL_PROGRAM_ID = #{programId})
       AND A.SELL_PROGRAM_ID = #{programId}
       AND B.APPLY_CODE = A.SELL_USER
  </select>

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java上乘武功入门--反射

    java上乘武功入门--反射

    反射是Java的一种机制,一般也叫做反射机制,本文会讲反射机制是什么和怎么使用,喜欢的朋友可以观看一下,希望能给你带来帮助
    2021-07-07
  • IDEA部署Tomcat的超详细图文教程

    IDEA部署Tomcat的超详细图文教程

    最近迫于无奈从我哪破旧的Eclipse转换到了IDEA,然后就是超多的不习惯,下面这篇文章主要给大家介绍了关于IDEA部署Tomcat的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • SpringBoot Pom文件依赖及Starter启动器详细介绍

    SpringBoot Pom文件依赖及Starter启动器详细介绍

    这篇文章主要介绍了SpringBoot Pom文件的依赖与starter启动器的作用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-09-09
  • 编码实现从无序链表中移除重复项(C和JAVA实例)

    编码实现从无序链表中移除重复项(C和JAVA实例)

    如果不能使用临时缓存,你怎么实现无序链表中移除重复项(?C和JAVA实例无序链表中移除重复项。
    2013-10-10
  • JDBC中Fetchsize的实现

    JDBC中Fetchsize的实现

    fetchsize是指在执行数据库查询时,每次从数据库中获取的记录条数,它对内存使用和网络传输效率有重要影响,在MyBatis中,可以通过全局设置或语句级别设置fetchsize,来控制查询操作的内存使用和提升性能,合理的fetchsize设置能有效减少网络往返次数和防止内存溢出
    2024-09-09
  • 类似Object监视器方法的Condition接口(详解)

    类似Object监视器方法的Condition接口(详解)

    下面小编就为大家带来一篇类似Object监视器方法的Condition接口(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • springboot 按月分表的实现方式

    springboot 按月分表的实现方式

    本文主要介绍了springboot 按月分表的实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Java中方法名称和泛型相同的用法示例

    Java中方法名称和泛型相同的用法示例

    这篇文章主要介绍了Java中方法名称和泛型相同的用法,结合实例形式分析了泛型替代方法名称的相关使用技巧,需要的朋友可以参考下
    2019-08-08
  • 批量将现有Jar包上传到Maven私服

    批量将现有Jar包上传到Maven私服

    今天小编就为大家分享一篇关于批量将现有Jar包上传到Maven私服,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • 一文详解Java中的注解(Annotation)

    一文详解Java中的注解(Annotation)

    在Java中注解(Annotation)引入始于Java5,用来描述Java代码的元信息,通常情况下注解不会直接影响代码的执行,尽管有些注解可以用来做到影响代码执行,这篇文章主要给大家介绍了关于Java中注解(Annotation)的相关资料,需要的朋友可以参考下
    2024-03-03

最新评论