java - 在 java 项目中将方法(非 get 和 set)放在哪里才能符合 Spring MVC

标签 java spring class model-view-controller methods

在一个 java Spring 项目上工作,我的团队在 Delphi 和 Java 方法之间存在冲突,我认为在方法位置方面。 (阅读:http://www.gbengasesan.com/fyp/5/ch5.htm#Classes -> 我看到 Delphi 似乎将方法重新组合到一个类中)。

例如,我们有一些类,包括用户、发票、债务等。 因此,当用户有一个发票列表时,将有关单个发票的所有方法(除了 getter 和 setter)放在 User 类中是正确的吗?!

我想不通。在我看来,诸如“创建发票”(至少会执行构造函数,因为某些“设置方法”随后会完成对象)、“修改发票”或“删除发票”等方法应该属于 Invoice 类。 对于用户创建、修改、删除或密码恢复的方法(可能是简单的 get 方法)的想法相同,然后将属于 User 类,依此类推应用程序的其余部分。

此外,只要我们没有进入完整的 Spring 模型,我们就应该只拥有 getter 和 setter(除了构造函数)。我希望我说得足够清楚。

最佳答案

在 Spring MVC 中,我们使用服务/业务层来实现这些。用户、发票和债务都有自己的 POJO,它们只有简单的数据定义。

如果您想查找属于一个用户的所有发票。或者属于某个用户的债务将进入债务服务层或具有 getDebts 的 POJO。或服务层,具有类似 getDebst(long user Id) 的功能,它将带来用户相关数据。

您可以在 https://medium.com/stackavenue/why-to-use-service-layer-in-spring-mvc-5f4fc52643c0 中查看更多详细信息或https://www.baeldung.com/testing-the-java-service-layer

关于java - 在 java 项目中将方法(非 get 和 set)放在哪里才能符合 Spring MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58610593/

相关文章:

java - Spring Boot 中的标准 API

java - JUnit 5 之前的 TestFactory 注解

java - 我的 Java 正则表达式没有捕获组

java - 使用@Select查询数据,却得到 'Invalid bound statement (not found)'

Java 泛型类数组

java - 方法的编写顺序重要吗?

java - spring mvc 3 中的资源映射

java - 邮戳邮件提供商说。邮件 "In queue"?

java - 由于我的全局变量而出现 NullPointerException

c++ - 将结构和类写入磁盘