- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试保存一个具有 JsonNode 属性的实体,并且必须将其转换为 jsonb 才能存储在 postgres 数据库中。
这是数据库表:
CREATE TABLE IF NOT EXISTS configuration_data (
id SERIAL NOT NULL PRIMARY KEY,
namespace_name TEXT NOT NULL,
dimension_id TEXT NOT NULL,
dimension_value TEXT,
path TEXT,
data JSONB,
version BIGINT DEFAULT 0
);
这是实体:
@MappedEntity(value = "configuration_data")
data class ConfigurationDataEntity(
@field:Id @GeneratedValue
val id: Long,
@MappedProperty("namespace_name")
val namespaceName: String,
@MappedProperty("dimension_id")
val dimensionId: String,
@MappedProperty("dimension_value")
val dimensionValue: String,
@MappedProperty("path")
val path: String,
@MappedProperty("data")
val data: JsonNode,
@MappedProperty("version")
val version: Long,
)
我正在尝试将这样的实体保存到存储库中:
val entity = ConfigurationDataEntity(1L, coordinates.namespace, "acc", "abc", "path", data, 1L)
repository.save(entity)
我收到的错误如下:
Caused by: io.micronaut.data.exceptions.DataAccessException: Error executing PERSIST: Unable to set PreparedStatement value: Can't infer the SQL type to use for an instance of com.fasterxml.jackson.databind.node.ObjectNode. Use setObject() with an explicit Types value to specify the type to use.
我想这是因为 postgres 无法将 jsonNode 存储在 jsonb 对象中,但我不知道如何将 JsonNode 转换为 jsonb。
提前非常感谢您:)
最佳答案
已将此注释添加到字段中:
@field:TypeDef(type = DataType.JSON)
所以实体仍然是这样的:
@MappedEntity(value = "configuration_data")
data class ConfigurationDataEntity(
@field:Id @GeneratedValue
val id: Long,
@MappedProperty("namespace_name")
val namespaceName: String,
@MappedProperty("dimension_id")
val dimensionId: String,
@MappedProperty("dimension_value")
val dimensionValue: String,
@MappedProperty("path")
val path: String,
@MappedProperty("data")
**@field:TypeDef(type = DataType.JSON)**
val data: JsonNode,
@MappedProperty("version")
val version: Long,
)
关于postgresql - 如何将 JsonNode 参数(micronaut + kotlin)保存为 postgres 数据库中的 jsonb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74653879/
我正在使用 jackson 库。我有很多 java 对象,它们只不过是 jsonNode 的包装器。因此想要将这些 jsonNodes 列表转换为单个 jsonNode。我怎样才能做到这一点。我试过这
我有主 JsonNode,{{k1:v1} = s1,{k2:v2} = s2,{k3:v3} = s3} 我单独获取一个节点键 {k1 : v1} 并将其分配给另一个变量并将其更新为 {k1 : n
我正在用 Java 编写 Play 2.3.2 应用程序。 在我的应用程序中,我调用了用 Scala 编写的其他模块的方法。 此方法返回一个 Json 响应,我尝试使用 WS 获取该响应。 这是我的方
我在写这篇文章时需要一些指导,以便我理解这个概念: 基本上,我需要在 String 和 JsonNode 之间进行转换,并且我已经看到了一个说明要做什么的答案,但作为新手开发人员,我不确定这意味着什么
我有以下 Json { "Parent": { "pk1": "pv1", "pk2": "pv2", "Child": {
我是 Java 菜鸟,正在努力进行类型转换。我有一个如下所示的 JSON 对象: [ { "A":{ "B":{
我遇到了转换错误,但不知道如何解决。 //get my json file as Map Map cm = null; try { cm = mapper.readValu
这个问题已经有答案了: What is a NullPointerException, and how do I fix it? (12 个回答) 已关闭 3 年前。 我需要获取此 arrayNode
我刚刚从 sourceforge.net 安装了 libjson。我尝试执行一个简单的程序但是我得到了这个错误 ‘JSONNode’ was not declared in this scope 这是
我在 Java 中使用 Jackson 库生成了以下 Json: { "name": "name1", "version": "0.0.1", "storage": {
我有以下 JSON 文件。 { "data": { "k1": "v1", "k2": "v2", ... } } 有什么方法可以将这些键和值作为 Map 获取吗?使用
通过 Play WS API,我得到了一个 Response 对象。因为它包含我调用的 JSON response.asJson() 这工作得很好。现在我想以 pretty-print 版本返回这个
我有这个json: { "text":[ {"a":1}, {"b":2} ] } 我有这个代码: JsonNode jsonNode = (new O
我正在尝试更新 expiryDate将嵌套的 JsonObject 中的变量设置为当前日期,JSON 的结构如下: { "expiryDate" : { "type" : "S
如何将 JsonNode 作为 java.email 中的电子邮件附件作为 json 文件发送 // Json node bit JsonNode requestBody = request().
考虑以下 Java 类定义。 CrudOperation.java: package com.cyberfront.test.json.nll.demonstration; import com.fa
我有一个类: Class myClass { @JsonProperty("status") boolean status; public boolean getStatus(
我正在从 cassandra 表中读取数据记录。创建我构建的 Java 对象。使用我从数据记录中获得的值设置所有值(我使用 jackson 从记录中获取这些值)。当我查看 json 请求时,我看到一个
我有一个Jackson子类型 ObjectNode 的 JsonNode: ObjectNode node = parent.path('somepath'); node 有许多子字段,例如您在这个
我有以下代码,它从 JsonNode 返回 string 的 list: public static List asList(final JsonNode jsonNode) {
我是一名优秀的程序员,十分优秀!