dromara / hutool

🍬A set of tools that keep Java sweet.
https://hutool.cn
Other
28.91k stars 7.48k forks source link

从5.7升级5.8以后,BeanUtil.copyProperties 复制map,map的key从Long变成了字符串 #3645

Closed yuandaijin closed 2 months ago

yuandaijin commented 2 months ago

版本情况

JDK版本: openjdk_8_201 hutool版本: 5.8.0.M1(请确保最新尝试是否还有问题)

问题描述(包括截图)

  1. 复现代码
 Map<Long, User> map = new HashMap<>();
        User p = new User();
        p.setUserId(123L);
        map.put(123L,p);
        Map<Long, User> m = BeanUtil.copyProperties(map, Map.class);
        User u = m.get(123L);
        Console.log(u);
  1. 堆栈信息

  2. 测试涉及到的文件(注意脱密)

比如报错的Excel文件,有问题的图片等。

looly commented 2 months ago

5.8.30修复此问题。

因为加了filter,导致只考虑了Bean,没有考虑Map,key被转为String处理了。

感谢~~