早上好,在我的项目中,我使用三层架构,我有一个用于 Controller 的包,一个用于服务的包,另一个用于数据模型和存储库的包(我正在使用 Spring Data)。
所以我需要为 Controller 包中的 Web 服务创建一些类。
我的问题是,最佳实践是在 Controller 包或模型包中创建这些类,或者模型包只能保留要持久化的类型?
提前谢谢您。
最佳答案
在使用多层架构多年之后,最佳实践是以对您和您的开发人员有意义的方式对类进行分组。请参阅以下示例:
├── src
│ ├── main
│ │ ├── java
│ │ │ └── com
│ │ │ └── mycompany
│ │ │ └── myproject
│ │ │ └── mymodule
│ │ │ ├── Application.java
│ │ │ ├── data
│ │ │ │ ├── bo
│ │ │ │ │ ├── Account.java
│ │ │ │ │ ├── Customer.java
│ │ │ │ │ ├── User.java
│ │ │ │ └── repository
│ │ │ │ ├── AccountRepository.java
│ │ │ │ ├── CustomerRepository.java
│ │ │ │ └── UserRepository.java
│ │ │ ├── exception
│ │ │ │ ├── DuplicatedRecordException.java
│ │ │ │ ├── NoResultException.java
│ │ │ │ └── UnknownErrorException.java
│ │ │ ├── web
│ │ │ │ └── controller
│ │ │ │ ├── AccountController.java
│ │ │ │ ├── CustomerController.java
│ │ │ │ └── UserController.java
│ │ │ └── service
│ │ │ ├── AccountService.java
│ │ │ ├── CustomerService.java
│ │ │ └── UserService.java
│ │ └── resources
│ │ ├── application.yml
│ │ ├── bootstrap.yml
│ │ ├── logback-spring.xml
│ │ └── messages
│ │ ├── message_es.properties
│ │ └── message.properties
前面的示例将包中的类分组为:
BO(业务对象) 代表数据的实体
异常 您的自定义异常类
Web Controller 如果您要构建休息,所有 Controller 都应该在这里。
服务 如果需要,您的服务类(class)。
资源 您的所有应用程序资源
关于java - 上课地点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55533136/