Spring JPA 中的自定义列选择
从 Spring JPA 中的表中选择特定列允许您仅检索所需的数据,从而减少带宽和提高性能。以下是使用 Spring Data JPA 实现此目的的方法:
使用投影
Spring Data JPA 支持投影,它允许您创建自定义接口来定义所需的列检索。例如,对于提到的示例查询:
SELECT projectId, projectName FROM projects
您将创建一个接口:
interface ProjectIdAndName { String getId(); String getName(); }
存储库方法
下一步,添加存储库中返回所需投影的方法:
List<ProjectIdAndName> findAll();
通过调用 findAll方法,您可以检索仅包含 id 和 name 属性的对象列表,而无需获取整行数据。
用法示例
要使用此功能,将存储库注入到您的服务或控制器中,并像往常一样调用 findAll 方法:
@Autowired private ProjectRepository projectRepository; @GetMapping("/projects") public List<ProjectIdAndName> getAllProjects() { return projectRepository.findAll(); }
这将返回 ProjectIdAndName 列表对象,包含每个项目的选定列。
以上是如何使用投影在 Spring JPA 中选择特定列?的详细内容。更多信息请关注PHP中文网其他相关文章!