{
"entityType" : "C",
"createdOn" : "2020-02-05",
"createdBy" : {
"id" : 1
},
"comment": "I am the comment",
"parentEntity" : {
"entityId" : 1
}
}
//User with id = 1 and UserEntity(Post) with entityId = 1 available in database.
Here createdBy.id (user id) is getting updated in the user_entity table, but userEntity.entityId is not getting updated in the comment table
3条答案
按热度按时间sg2wtvxw1#
| |
| |
岗位 评论
|
@多对一
userentity-引用user\实体表的pk(实体\ id),因为评论可以发布或回复到另一个评论
在试图保存commentservice类的评论时,
注解表(父实体id)中的外键引用用户实体表中的实体id,但未更新。值为空。
另一方面,userentity与user有一个manytone关系createdby,它正确地更新user\u entity表中的外键user\u id
有人能告诉我哪里有问题吗?我从昨天晚上就开始试了,但是运气不好。已经检查了一些其他的答案,但是无法得到这个案例的答案。
用户.java
用户实体.java
后java
注解.java
以及他们的存储库
postcomment服务的json
xu3bshqb2#
你有非常复杂的实体关系,在我看来。。。
不管怎样,我发现你加了一个
generator
财产UserEntity
具有post_sequence
价值,但我找不到与Post
数据库中的实体。这可能就是崩溃的原因。你必须连接UserEntity
至Post
如图所示或更改生成器值。yptwkmov3#
我能解决这个问题。这个问题出现在comment具体类的下面一段代码中
这个json输入
似乎json输入中的parententity没有被解析。在正确解析json输入时,将jsonproperty(“parententity”)放在parententity上方就解决了这个问题。
然而,还有另一个问题。parententity未反序列化为userentity,因为userentity是抽象类。我不得不使用jacksonpolymorphicdeserialization,通过引入一个新的字段parenttype(“p”表示post,“c”表示comment)以及一些注解(如下所示),将parententity反序列化为相应的具体类对象。
引用-通过字段进行多态反序列化。我不太清楚这是怎么回事。我会尽力理解并更新答案。
如果有人知道反序列化json的更好方法,一定要在评论中提及,或者作为一个新的答案。