从列表中提取选定的假动作


[{"uSID":1,"userId":"12","firstname":"shiva","lastname":"shubham","email":"shiva","phone":"586868768","active":"y","profile":{"pRID":98,"profileId":"78","profileName":"sh","paddress":"pune","surname":"sharma","pfname":"master"},"branch":{"bRID":2,"branchName":"zende","branchCode":"7899","add2":null,"city":null,"baddress":null,"add1":null}},

这是我的json格式。在我的用户中有一个外键配置文件和分支。当使用/geAllUsers获取时,我只需要为ex显示几个分支字段。

"bRID":2,"branchName":"zende","branchCode":"7899

我用哪种代码来写弹簧数据jpa

由于提供的信息有限,我假设您发布的JSON是从API到用户的当前输出。

可以通过以下两种方式进行处理

  • 添加自定义序列化程序-您可以添加自定义序列化器并用它注释DAO/Entity类。这在将对象转换为JSON时有效。因此,spring返回所有字段,但只有选定的字段会序列化为json并返回给用户。缺点-由于您是在类级别添加注释,因此这将适用于返回此对象的每个实例。为了处理这个问题,您可以创建一个DAO,向DAO添加注释,将对象转换为DAO并返回DAO。

  • 像ModelMapper或MapStruct这样的用户映射框架-这将是更理想的方式。这种情况发生在服务中,与之前串行化时发生的情况不同。您可以根据需要创建一个DAO类(包含您想要的字段(,并使用这些框架中的任何一个将实体转换为所需的DAO。代码将非常精简和优化。并且只有当您想要限制字段时才能使用它。

您可以在互联网上获得许多关于以上两方面的教程。

附言-如果你想在ModelMapper和Mapstruct之间使用哪一个,Mapstruct的性能更好,而ModelMapper很容易实现。

最新更新