Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring 使用流的JSON响应对象_Spring_Spring Boot_Stream - Fatal编程技术网

Spring 使用流的JSON响应对象

Spring 使用流的JSON响应对象,spring,spring-boot,stream,Spring,Spring Boot,Stream,我用的是弹簧靴。我正在从DAO生成JSON响应。 我的最终JSON响应具有以下三个属性: { "A": "00011", "B": "abc", "C": "RDG" } 输出应如下所示: { "A": "00011",

我用的是弹簧靴。我正在从DAO生成JSON响应。 我的最终JSON响应具有以下三个属性:

                {
                    "A": "00011",
                    "B": "abc",
                    "C": "RDG"
                }
输出应如下所示:

               {
                    "A": "00011",
                    "B": "abc"
                }
在下面的代码中,TModel继承了DAO的属性以及所有三个字段A、B、C。这将返回给我的控制器。如何在JSON响应中去掉字段
C

代码:

public TModel(List<TModel> tEntities) {
        List<TModel> responseEntities= tEntities.stream()
                .filter(model -> model.getStatus().equals("RDG"))
                .collect(Collectors.toList());
公共TModel(列表){
列表响应=tenties.stream()
.filter(model->model.getStatus().equals(“RDG”))
.collect(Collectors.toList());
解决方案1)
在字段c上添加@JsonIgnore注释

解决方案2)
创建一个没有字段C的DTO对象。您可以使用MapStruct之类的工具,帮助在域和DTO对象之间进行映射


我更喜欢解决方案2,因为它更干净。

如果允许更改响应模型,只需在C字段上方添加@JsonIgnore注释即可