我可以在控制器类SpringMVC中拥有多个服务吗?

我可以在控制器类SpringMVC中拥有多个服务吗?,spring,Spring,我有一个控制器类,在它里面,我使用多个服务。例如:当我添加一名新员工时,我还需要为他添加一个帐户。为此,我在EmployeeController中使用EmployeeService和AccountService。没关系?或者最好在EmployeeService中使用AccountDAO,然后在那里添加帐户?技术上可以。但我建议不要将任何业务逻辑放入控制器中 在我看来,EmployeeService应该在创建员工时负责创建一个帐户。这听起来像业务逻辑,不应该在控制器中。控制器应该只是从web到业务

我有一个控制器类,在它里面,我使用多个服务。例如:当我添加一名新员工时,我还需要为他添加一个帐户。为此,我在EmployeeController中使用EmployeeService和AccountService。没关系?或者最好在EmployeeService中使用AccountDAO,然后在那里添加帐户?

技术上可以。但我建议不要将任何业务逻辑放入控制器中


在我看来,EmployeeService应该在创建员工时负责创建一个帐户。

这听起来像业务逻辑,不应该在控制器中。控制器应该只是从web到业务服务的一个小型集成层,它不应该包含业务逻辑。或者让您的
EmployeeService
使用
AccountService
创建帐户,这样所有内容都将在一个事务中执行。您还可以使用事件并触发
EmployeeCreated[Event]
,然后使用侦听器创建
帐户。这些只是解决这个问题的两种选择(和观点)。关键是你们的控制器应该尽可能薄。我明白了。谢谢