gpt4 book ai didi

java - 实体模型或Pojo类作为REST API的返回对象

转载 作者:行者123 更新时间:2023-12-02 09:38:31 30 4
gpt4 key购买 nike

我正在使用 REST API,如果将模型类对象列表直接作为对用户的响应,是否有任何错误。或者我应该在返回之前将这些实际模型类映射到任何 POJA 类?

例如:如果 API 忘记了所有用户(“/Users”)

那么直接返回是不是一个好的编码方式

return userRepository.findAll();

或者需要将其转换为任何 List<UserPOJO>回来之前?

或者有什么好的编码标准吗?

最佳答案

根据我的经验,通常最好将实体映射到等效的 POJO 类。

以下是一些原因:

1) 大多数时候,您不需要实体中存储的所有数据。您可以仅映射响应中所需的子集。

2) 从安全角度来看,有某种中间立场总是好的,可以过滤掉实际上不应该放入响应中的敏感数据。或者仅适用于您可以在映射过程中决定的某些用户。

3) Hibernate 对象不是普通对象,它们是代理。这可能会导致不必要的延迟加载,例如 @OneToMany@ManyToMany 关系。您应该能够控制它,根据我的经验,Jackson 会加载所有可能的内容,除非您使用 @JsonIgnore 对其进行注释。

除非您使用的是非常简单且安全性不高的应用程序,否则我会继续使用 Hibernate 对象。但除此之外,在大多数情况下,我会进行映射。

关于java - 实体模型或Pojo类作为REST API的返回对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57301721/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com