1.ConcurrentModificationExceptionå¼å¸¸
2.mybatis查询返回map的源码问题
3.Java 的MapKey是什么
ConcurrentModificationExceptionå¼å¸¸
ä½ åç¨for(String key : mapKey)éåæ¶ï¼å¦æ对mapè¿è¡äºä¿®æ¹å°±ä¼æåºæ¤å¼å¸¸ãå¦æéè¦å¨éåç循ç¯å é¨å¯¹mapè¿è¡ä¿®æ¹(å¦remove)ï¼å¯ä»¥ç¨Enumeration enm = map.keys();
å¦æä¸éè¦å¯ä»¥ç¨HashtableãConcurrentHashMap
mybatis查询返回map的问题
假设背景:想要获取某个省下各个市有多少问题,以 Map 的讲解形式返回,key 代表某个市的源码问题个数。数据库表如下:
因此,讲解每有一条该市的源码泰山副图源码数据就代表该市多了一个问题。假设为江苏省的讲解云erp手机源码编码,为南京市的源码编码,为苏州市的讲解编码,数据如下:
正确返回的源码某个省下各个市有多少问题的map结果应为:
以下是一些可能的写法:
1、mybatis只返回单个map
mapper接口:
mybatis的讲解xml文件中:
此时会报错,期待的源码是一个map,但是讲解得到的结果是两个map,为:
可见mybatis返回的源码web连续打印源码map是只能返回一个的,遇到多的讲解就会报错,会将select后面的源码字段的名称作为key,值作为value。可参考:codeleading.com/article...
2、次日涨停数值源码查询返回map的list
这是第一个正确写法。想要获取想要的效果,mybatis返回的是一个list的map,每个map同上一个结果,源码文件预处理但是是list形式的
mapper接口:
xml文件:
service层:
可以看出这种方式mapper是返回的list形式的map,然后再在service层转换成所需的map的形式。
3、利用mybatis的@MapKey注解返回map
要先定义一个do对象,利用mybatis的@MapKey注解 do对象,分别为城市的编码,和该城市的问题的数量
mapper接口:
xml文件:先定义resultmap,再写sql
service层:
Java 的MapKey是什么
mapkey? 具体点 是说mapkey这个类是啥 还是说 map中得key是干嘛的?
map本身就是key-value类型的数据模型, 通过key来找对应value呗。 跟数据储存在内存中是一样得, 通过内存地址找对应数据内容,一个道理。
2024-11-30 11:55
2024-11-30 11:27
2024-11-30 10:38
2024-11-30 10:26
2024-11-30 10:25
2024-11-30 10:19