如何为json响应添加和忽略字段 [英] How to add and ignore a field for json response

查看:126
本文介绍了如何为json响应添加和忽略字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用RestEasy和hibernate在杰克逊中返回响应。
我有一个Bean Player,它包含字段:name,id,age,position。

现在,我正在实现两个 GET rest方法来回应json。


  1. getPlayer(),这是返回一个球员:名称,身份证,年龄,位置。


  2. getPlayers(),这是返回一个球员名单,但与这名球员,我不想返回位置。 我的意思是,如何为一个响应添加一个字段并忽略另一个响应。



  3. 请提出建议。



    谢谢

    解决方案 div>

    你难道不能简单地清空position字段吗?

      @GET 
    @Path( / players)
    public List< Player> getPlayers(){
    List< Player> players = getPlayersFromHibernate();

    (Player player:players)
    player.setPosition(null);

    回报球员;
    }


    I'm using RestEasy and hibernate to return response in Jackson. I have a bean Player having fields: name, id, age, position.

    Now, I'm implementing two GET rest methods for returing json.

    1. getPlayer(), which is returning a player: name, id, age, position.

    2. getPlayers(), which is returning a list of players, but with this list of players, i do not want to return position.

    I mean, how can I add a field for one response and ignore it for another response.

    Please suggest.

    Thanks

    解决方案

    Can't you simply null out the position field?

    @GET
    @Path("/players")
    public List<Player> getPlayers(){
        List<Player> players = getPlayersFromHibernate();
    
        for(Player player : players)
            player.setPosition(null);
    
        return players;
    }
    

    这篇关于如何为json响应添加和忽略字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

    查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆