java - 从类实例变量创建键/值对的快捷方法是什么?

标签 java

为类的所有字符串实例变量创建键/值对的最佳方法应该是什么?有没有图书馆可以做这样的任务?

我正在使用基于反射的向后查找来执行相同的操作。但它似乎做了很多工作。

例如:

我有课

public class Account implements ManagedEntity {

private String accountNumber;

public Account(String accountNumber) {
    this.accountNumber = accountNumber;
}
}

如果像下面一样创建了 Account 类的实例, 帐户 ac = 新帐户("abc");

输出映射应类似于:[{"accountNumber", "abc"}]。

最佳答案

正如 Peter Lawrey 在其中一条评论中指出的那样,如果您正在寻找一个可以为您进行转换的库,那么一个可能的答案是 Apache Commons BeanUtils :

您可以使用BeanUtils该库中的类:

Account account = new Account("abc");
Map accountMap = new HashMap();
BeanUtils.populate(account, accountMap);

或者使用BeanMap实现起来会更容易:

Account account = new Account("abc");
Map accountMap = new BeanMap(account);

关于java - 从类实例变量创建键/值对的快捷方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12250038/

相关文章:

java - DefaultTableModel 上的 getRowCount() 错误

java - List 的类属性类型,不可由访问器修改

java - 通过嵌套类发送变量

java - 读写套接字,Java

java - 未找到资源异常

java - JSON.parse() 等效于 Java 的 mongo 驱动程序 3.x

java - 在自定义 WSO2 组件中使用 CEP EventBuilder 服务

java - 模数问题

java - 使用 Vue-CLI Webview 无法渲染虚拟 DOM 并在 SPA 中显示空白

java - 当我运行 scala 应用程序时如何修复 "NoClassDefFoundError: midterm/Main"?