gpt4 book ai didi

Java 服务层方法 - 主键或 Hibernate 实体参数?如果使用 Spring Boot,哪个更惯用?

转载 作者:行者123 更新时间:2023-11-30 05:53:06 25 4
gpt4 key购买 nike

如果使用 Java (Spring Boot),假设服务中有一个方法:updateCompanyName

Spring Boot 应用程序的服务层中更惯用的方法签名是:

……

updateCompanyName(公司 company, String newName);

-或-

updateCompanyName(Long companyID, String newName);

……

换句话说, Controller 应该从 DAO 中水合对象并将 Hibernate 实体传递到服务层,还是服务层应该期望主键并从 Hibernate 水合实体?

最佳答案

一般来说,在分层架构中, Controller (来自表示层)从输入(即请求正文)中提取数据(即 companyID),并通过传递此数据来调用应用程序服务。

应用程序服务从存储库加载聚合,对其调用适当的方法,然后将聚合保留回存储库。该应用程序服务显得很薄,没有业务逻辑(属于聚合)。

因此,就您的情况而言,答案是: Controller 在应用程序服务上调用 updateCompanyName(Long companyID, String newName);

关于Java 服务层方法 - 主键或 Hibernate 实体参数?如果使用 Spring Boot,哪个更惯用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53586770/

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