如果属性具有相同的结果属性,则JSON writeValueAsString返回1

我有点困惑。我通过native-select语句

从数据库中获得结果
TypedQuery<User> query = entityManager.createQuery(
            "SELECT i FROM User i",User.class);
    result = query.getFirstResult;

具有User_created和user_updated作为属性的用户。结果看起来很好(整个user_created和user_updated属性),但是如果我使用

String entity = objectMapper.writerWithView(v).writeValueAsString(result);

实体看起来像:

"user_created": {
    "@id": 1,"id": 11737,"fullname": "Max Mustermann","email": "max.mustermann@gmx.de","username": "maxi"
},"user_updated": 1,

它应该像这样:

  "user_created": {
        "@id": 1,"username": "maxi"
    },"user_updated": {
        "@id": 1,

如果我在同一结果上有两个不同的用户用于user_updated和user_created,则结果看起来应该像这样:

 "user_created": {
        "@id": 1,"id": 4172,"fullname": "Simone Musterfrau","email": "simone.musterfrau@gmx.de","username": "simi"
    },

也许有一个结果相同的问题?就像我说的那样,SELECT查询后的结果看起来应该如何。

我发现了中心问题。在我的实体上,我使用

@JsonIdentityInfo(generator = ObjectIdGenerators.IntSequenceGenerator.class,property = "@id",scope = User.class)

但是我的实体需要这个。也许有人可以告诉我,如果对象映射器有任何对象,或者我可以向实体添加一些属性。

h11111_h 回答:如果属性具有相同的结果属性,则JSON writeValueAsString返回1

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3124412.html

大家都在问