Java 控制器有很多@Autowired服务

Java 控制器有很多@Autowired服务,java,spring,performance,rest,spring-mvc,Java,Spring,Performance,Rest,Spring Mvc,我将所有RESTAPI方法组合在一个控制器中,每个方法都需要自己的服务。 因此,在一个控制器中,我有大约15个带注释的字段用于服务 这样做对吗 它会影响我的REST控制器的性能吗? 我应该在两个或多个单独的控制器之间划分所有方法吗? 为了避免影响性能,类中的@Autowired的最佳数量是多少?最好在多个控制器之间分割API方法,但不要因为性能危害(超级控制器可能更快)-这是为了防止将来出现可维护性问题。您不必担心性能问题。Spring只是给您一个对您在Spring配置中声明的bean的引用 但

我将所有RESTAPI方法组合在一个控制器中,每个方法都需要自己的服务。 因此,在一个控制器中,我有大约15个带注释的字段用于服务

这样做对吗

它会影响我的REST控制器的性能吗? 我应该在两个或多个单独的控制器之间划分所有方法吗?
为了避免影响性能,类中的
@Autowired
的最佳数量是多少?

最好在多个控制器之间分割API方法,但不要因为性能危害(超级控制器可能更快)-这是为了防止将来出现可维护性问题。

您不必担心性能问题。Spring只是给您一个对您在Spring配置中声明的bean的引用

<>但您可能需要考虑在多个控制器之间划分方法,以便使代码更加可读和可维护。


查看您当前的控制器,看看您是否可以对方法进行逻辑分组。

如果是单例的,则不会有任何性能下降。如果控制器本身是原型或请求范围的,@Autowired服务也是非单例的,并且需要大量初始化,那么性能可能会有所下降。这不会对性能造成负面影响。但是为了增加可理解性,您应该拆分控制器。