gpt4 book ai didi

java - 在 Spring Hibernate 中操作 JSON 数组

转载 作者:行者123 更新时间:2023-11-29 06:31:28 24 4
gpt4 key购买 nike

我正在尝试使用 Spring 和 Hibernate 在 MySQL 中存储一个 JSON 数组。

例如,应用程序从用户那里获取点赞并将用户的 ID 存储在 JSON 数组中

[1,2,3,4,5,6]

在列名称 likes 中,类型为 text (MySQL)

¿如何将新 ID 放入数组中?我的意思是,获取 JSON 表单数据库并插入 id 并计算元素的数量。

最佳答案

我会使用transient 变量来解决这个问题。我认为没有更好的解决方案。您也可以尝试使用 hibernate interceptors 作为解决方案。

@Table
@Entity(name='Likes')
public class LikesEntity implements Serializable {

@Transient
private List<String> userIds;
@Column
private String likes;
@Column
private String count;

//getter and setters for the like and count
...
public void addUserId(String id){
this.userIds.add(userIds);
this.likes = convertToJsonArray(userIds); // use GSON or Jackson or any other library that can help you convert array to JSON string
this.count = this.userIds.size();
}


}

在您的服务层中执行以下操作

 @Transactional(lockmode = LockMode.READ){
LikesEntity le = sess.get(LikesEntity.class,234);
le.addUserId("userPk");
session.saveOrUpdate(le);
}

关于java - 在 Spring Hibernate 中操作 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27708675/

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