java - 如何使用 JSONB PostgreSQL 通过 JSON 插入列?
问题描述
我有一个实体,它映射到 PostgreSQL,我想使用 JSONB 能够通过 JSON 插入列。
@Entity
@Table(name="TB_ORDEM_MANUTENCAO")
@TypeDef(
name = "jsonb",
typeClass = JsonBinaryType.class
)
public class OrdemManutencao implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.AUTO) // Cria automaticamente os ids
private long id;
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd")
private Date dataManutencao;
@OneToOne
@JoinColumn(name = "equipamento_id", unique = true)
private Equipamento equipamento;
@Type(type = "jsonb")
@Column(columnDefinition = "jsonb")
private String propriedades;
}
在 Swagger 中,我尝试按如下方式添加维护订单:
{
"propriedades" : [{"uf": "MG", "teste": "teste"}],
"dataManutencao": "2020-04-04",
"equipamento": {
"id": 13,
"nome": "Lavadoura",
"quantidade": 1
}
}
这不会在我的 order_maintenance 表中插入列,只需像这样插入:
Response body
{
"id": 27,
"dataManutencao": "2020-04-04",
"equipamento": {
"id": 13,
"nome": "Lavadoura",
"quantidade": 1
}
}
我怎样才能做到这一点?
解决方案
这解决了我:vladmihalcea.com/map-string-jpa-property-json-column-hibernate。
推荐阅读
- javascript - 使用 foreach 将对象推送到数组
- node.js - 如何按最新对新项目进行排序?
- visual-studio - Visual Studio 2019(社区):无法创建具有任何编程语言和操作系统规范的新项目
- python - 连接 Angular 10 + Django Api Rest 没有渲染对象
- python - Flask Security 更新密码不起作用
- javascript - 如何将坐标映射到对象(角度)
- r - 如果第一列中没有标题,如何使用 ggplot 创建折线图?
- python - Pandas - 为什么会抛出 ValueError?
- swift - Swift 数组分块问题中的组合数组和索引范围问题
- php - 如何将数字与php字符串的末尾分开并将它们保存到不同的变量中