java问题,数据库查到的一个map,需要截取这个map里面值的部分内容放回map里面?

2024-12-01 01:13:52
推荐回答(2个)
回答1:

写了一个简单的例子,希望能帮你提供下思路。
Map map=new HashMap();
map.put("1", "11111");
map.put("2", "22222");
map.put("3", "33333");
下面的方法可以写成一个公用的方法。遍历后将截取的原放回map中,返回即可达到你想要的结果。方法可以带两个参数,一个是需要遍历的Map,另一个是key,如果key为null则遍历map,截取所有对象指定的属性。如果key有值则截取key对应的值。
for(Entry entry:map.entrySet()){
map.put(entry.getKey(),entry.getValue().substring(0, entry.getValue().length()));//map中key相同时,后者会覆盖前者的value
System.out.println("key:"+entry.getKey()+";value:"+entry.getValue());
}

回答2:

理论上说,不停地建立数据库连接、查询、断开数据库连接这种操作是很慢的,所以把要查的东西放到Map中会快很多。但实际上我们多数情况下不会把数据查出来放到Map中,因为查询的数据往往很多,全都放到内存中去根本就不现实,就算你服务器100G的内存也不够用。所以我们通常的做法就是用数据连接池,具体做法我就不说了,用兴趣的话可以查查数据连接池。