java - 如何调用作为字符串值给出的调用?
问题描述
我想知道如何实现以下目标:
在配置文件中给出:
key = "order.getItems().get(0).getId().getItemId()"
我想在java代码中调用上面的调用,所以如果给我这个方法签名:
public String getKey(String key) {
// where key = "order.getItems().get(0).getId().getItemId()"
// invoke the key and get the value
String val = order.getItems().get(0).getId().getItemId();
}
解决方案
不,我不认为你可以做到这一点,但如果你使用new com.example.Order().getItems().get(0).getId().getItemId()
,那可能是可能的。
或者使用一些反射编码,以下可能是可能的。
public String getKey(Order order, String key) {
// where key = "getItems().get(0).getId().getItemId()"
// do some reflect coding here
String val = order.getItems().get(0).getId().getItemId();
}
推荐阅读
- typescript - 带有超时毫秒的打字稿重试逻辑
- html - 想要将 span 放在 div 的顶部并更改 html 中的字体
- javascript - 试图显示一个对象字符串而不是键
- python - 如何使用python将两级行转换为列?
- mysql - 存储 md5(url) 而不是 url(用作键)有什么性能优势?
- python - Pandas Python:添加计算每个产品 ID 的列
- php - 如何发出正确的 xml api 请求?
- amazon-web-services - 通过 AWS 上的 Tibanna 执行 Snakemake 工作流程
- ssis - SSIS 集成运行时 ADF - 为 Visual FoxPro 9.0 安装 Microsoft OLE DB 提供程序
- ios - iOS:NSPredicate 使用存储为字符串的日期进行比较