- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我的一个网络服务返回以下 Java 字符串:
[
{
id=5d93532e77490b00013d8862,
app=null,
manufacturer=pearsonEducation,
bookUid=bookIsbn,
model=2019,
firmware=[1.0],
bookName=devotional,
accountLinking=mandatory
}
]
我有上述字符串的等效 Java 对象。我想将上述 java 字符串类型转换或转换为 Java 对象。
我无法对其进行类型转换,因为它是一个字符串,而不是一个对象。所以,我试图将 Java 字符串转换为 JSON 字符串,然后我可以将该字符串写入 Java 对象,但没有运气得到 invalid character "="
异常。
Can you change the web service to return JSON?
那是不可能的。他们没有改变他们的契约(Contract)。如果他们返回 JSON,那将非常容易。
最佳答案
您的网络服务返回的格式有自己的名称 HOCON。 (您可以阅读更多相关信息 here )
您不需要自定义解析器。不要试图重新发明轮子。请改用现有的。
将此 Maven 依赖项添加到您的项目中:
<dependency>
<groupId>com.typesafe</groupId>
<artifactId>config</artifactId>
<version>1.3.0</version>
</dependency>
然后按如下方式解析响应:
Config config = ConfigFactory.parseString(text);
String id = config.getString("id");
Long model = config.getLong("model");
还有一个选项可以将整个字符串解析为 POJO:
MyResponsePojo response = ConfigBeanFactory.create(config, MyResponsePojo.class);
不幸的是,这个解析器不允许 null
值。因此,您需要处理 com.typesafe.config.ConfigException.Null
类型的异常。
另一种选择是将 HOCON
字符串转换为 JSON
:
String hoconString = "...";
String jsonString = ConfigFactory.parseString(hoconString)
.root()
.render(ConfigRenderOptions.concise());
然后您可以使用任何 JSON 到 POJO 的映射器。
关于java - 将 HOCON 字符串转换为 Java 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58288713/
我正在使用 HOCON 配置日志消息,并且正在寻找一种动态替换占位符值的方法。 我知道 ${?PLACEHOLDER} 将读取环境变量并在 PLACEHOLDER 环境变量不存在时返回一个空字符串。
假设我有这样的配置: root { value1: 1 value2: 2 values { dynamic1 { static1: 10 sta
我在 SBT 下有多模块项目。 项目 A (图书馆)有reference.conf带有 A 的文件的配置参数。项目 A取决于 akka-actor库,它自带 reference.conf文件。项目 A
我正在使用类型安全配置,并且我正在寻找一种简单的方法来允许可选覆盖应用程序之间共享的配置文件中的属性。 假设我有 2 个应用程序,A 和 B。它们都使用模块 Z。它们都加载共享配置文件“shared.
在 Scala 研究应用程序中,我使用 PureConfig 的 ConfigSource.file() 方法加载一个 hocon 文件,该方法表示研究实验的默认配置。我用它来动态构建一批变体。在进行
我怎样才能结合application.con用于 lightben/typesafe 配置的 HOCON 格式文件 https://github.com/lightbend/config使用 grad
我已经设置了一个 Akka.Net 节点作为集群中的种子节点,我称之为前端,另一个节点我称之为后端。在前端节点中,我在代码中配置了一个集群路由器组,这使我可以将消息从前端发送到任何以“后端”角色加入(
我想从 HOCON (Typesafe Config) 文件中将以下配置读入 Kotlin。 tablename: { columns: [ { item: { type: intege
我有一个从 JSON 文件创建的 hocon 配置。我需要解析以下 hocon 并提取值 示例 hocon 文件:示例.json nodes=[ { host=myho
尚未找到缩进/自动套用格式的方法 HOCON配置文件。你在哪儿? 最佳答案 我相当确定 HOCON 没有 Emacs 主要模式。但它看起来与 JavaScript 类似,因此您可以通过将其添加到 .e
我有一个此处提到的配置 map-config{ key1 : [ list1, list2, list3 ], key2 : [ list4, list5 ],
我的一个网络服务返回以下 Java 字符串: [ { id=5d93532e77490b00013d8862, app=null, manufacturer=pearson
在 application.conf ,如果所述环境变量为空,我如何使用环境变量来设置值或默认值? 最佳答案 my.value="default" my.value=${?SOME_ENV_VARIA
我正在学习 akka.net 并可能会用它来替换我们传统的消息驱动应用程序的一部分。 基本上,我正在尝试让X 个节点加入集群。它是点对点类型,我可能会在一个节点上运行 X 数量的参与者(同一参与者)。
我正在尝试使用 Hocon 格式在 Vertx 中进行配置。我还为它添加了 maven 依赖项。 com.typesafe config
我想将 .conf 文件直接转换为 json,以便我可以将其传递给前端。有没有办法在 scala/play 中做到这一点?我现在走的路似乎非常麻烦: val conf: Configuration =
我想使用自动化来创建带有 python 3 脚本的 hocon 配置。我读到 lightbend ( https://github.com/lightbend/config ) 推荐 pyhocon
我是一名优秀的程序员,十分优秀!