Java BeanUtils 将 List 对象映射为 List<Map> 的方法 日期: 2027-01-29 标签: 常规 你可以使用 Java 的 BeanUtils 库将 List 对象映射为 List。以下是一个示例代码:\n\njava\nimport org.apache.commons.beanutils.BeanUtils;\n\nimport java.lang.reflect.InvocationTargetException;\nimport java.util.ArrayList;\nimport java.util.HashMap;\nimport java.util.List;\nimport java.util.Map;\n\npublic class Main {\n public static void main(String[] args) {\n // 创建一个包含对象的 List\n List<Person> personList = new ArrayList<>();\n personList.add(new Person("John", 25));\n personList.add(new Person("Alice", 30));\n\n // 将 List 对象映射为 List<Map>\n List<Map<String, Object>> mappedList = new ArrayList<>();\n for (Person person : personList) {\n Map<String, Object> mappedObject = new HashMap<>();\n try {\n // 使用 BeanUtils 将对象属性映射到 Map\n mappedObject = BeanUtils.describe(person);\n } catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) {\n e.printStackTrace();\n }\n mappedList.add(mappedObject);\n }\n\n // 打印映射后的 List<Map>\n for (Map<String, Object> mappedObject : mappedList) {\n System.out.println(mappedObject);\n }\n }\n\n public static class Person {\n private String name;\n private int age;\n\n public Person(String name, int age) {\n this.name = name;\n this.age = age;\n }\n\n public String getName() {\n return name;\n }\n\n public int getAge() {\n return age;\n }\n }\n}\n\n\n运行以上代码,将会输出以下结果:\n\n\n{age=25, class=class Main$Person, name=John}\n{age=30, class=class Main$Person, name=Alice}\n\n\n注意:在将对象属性映射到 Map 时,BeanUtils 会自动将属性名作为 Map 的 key,属性值作为 Map 的 value。因此,上述示例中 Person 对象的 "name" 属性被映射为 Map 的 "age" 键,"age" 属性被映射为 Map 的 "name" 键。 原文地址: https://www.cveoy.top/t/topic/pRxQ 著作权归作者所有。请勿转载和采集! 免费AI点我,无需注册和登录