java - 如何从 JSON HTTP 响应 Spring Boot 中仅解析 1 个变量
问题描述
嗨,我想使用 Java(+Spring Boot)以最优化的方式从 GET 响应中解析 1 个值。
{
"table": "A",
"currency": "usd",
"code": "USD",
"rates": [
{
"no": "073/A/NBP/2021",
"effectiveDate": "2021-04-16",
"mid": 3.7978
}
]
}
我正在寻找在不为此响应创建 DTO 的情况下解析“中间”值的方法。在最坏的情况下,我只会做一个子字符串。
解决方案
尝试这个。
String input = "{\r\n"
+ " \"table\": \"A\",\r\n"
+ " \"currency\": \"usd\",\r\n"
+ " \"code\": \"USD\",\r\n"
+ " \"rates\": [\r\n"
+ " {\r\n"
+ " \"no\": \"073/A/NBP/2021\",\r\n"
+ " \"effectiveDate\": \"2021-04-16\",\r\n"
+ " \"mid\": 3.7978\r\n"
+ " }\r\n"
+ " ]\r\n"
+ "}";
String midValue = input.replaceFirst("(?s).*\"mid\"\\s*:\\s*([-.\\d]+).*", "$1");
System.out.println(midValue);
输出:
3.7978
推荐阅读
- javascript - Android 应用无法识别新用户登录
- azure - 从事件中心摄取到 Azure 数据资源管理器的部分数据
- python-3.x - view.py 有一个意外的关键字参数 topic_id #p
- javascript - 根据子数组唯一值获取值
- javascript - Webpack 4 - 无法通过相对路径在 SCSS 文件中加载 CSS
- javascript - 如何在 React.js 中将 formData 作为对象的嵌套值发送?
- javascript - Chartjs - 将图例更改为带有圆点样式的线?
- jboss - 如何从 Wildfly 的连接池中手动删除数据源连接?
- pandas - 如何处理熊猫中的同名列
- prolog - Prolog:为什么这个谓词没有失败,一个空列表作为参数传递