gpt4 book ai didi

java - hibernate 是否有任何序列化/反序列化 json(或 xml)列并将其转换为真实模型属性的东西?

转载 作者:搜寻专家 更新时间:2023-10-31 19:47:49 25 4
gpt4 key购买 nike

在 Rails 中,我们有 serialize 方法,它接受一个属性(或列),当保存在数据库中时,该属性(或列)将自动序列化为 json。

保存并查询该对象后,可以将对象序列化的 json 作为真实的类属性访问。

我的问题是:是否有任何内置或软件包将此功能添加到 hibernate ?如果不是,是否可以使用反射 java api 动态创建属性?

我对此提出质疑,因为我有点兴趣研究一点 Java 以及您可以使用 JVM 做什么。

谢谢。

最佳答案

我不太明白你想要什么,抱歉。

但是如果您想要一个对象的字段,其值以单个列中的序列化形式保存到数据库中,而不是映射到另一个表中的行的引用,那么这就是 JPA 的标准部分。您只需定义一个字段,然后不要使用关系注释对其进行注释。不过,我相信字段的类型必须是 Serializable 的子类型(遗憾)。例如:

@Entity
public class Colleague {
@Id
private int id;
private HashMap<Date, String> diary;
}

这将映射到这样的表:

create table Colleague (
id integer primary key,
diary blob
)

现在,您提到了 JSON。这不会使用 JSON;它将使用标准的 Java 序列化。我认为没有什么特别明智的方法可以让它改用 JSON;最简单的方法可能是将要序列化的对象包装在 JSONifying 包装器中。不太难,但有点奇怪。

不过,即使这不是 JSON,它的用处也大致相同:数据进入数据库然后返回。

同样,不知道这是否真的是您想要的,抱歉!

关于java - hibernate 是否有任何序列化/反序列化 json(或 xml)列并将其转换为真实模型属性的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13349045/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com