Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 网络框架。。Spring、dropwizard线程池和DI_Java_Spring_Spring Mvc_Aop_Dropwizard - Fatal编程技术网

Java 网络框架。。Spring、dropwizard线程池和DI

Java 网络框架。。Spring、dropwizard线程池和DI,java,spring,spring-mvc,aop,dropwizard,Java,Spring,Spring Mvc,Aop,Dropwizard,我想了解web框架中的线程池操作。我在Dropwizard中看到了这种行为(Spring的行为也一样)。 假设我们已经定义了一个资源 @Path("/id/create") CreateResource { ... 然后。对于集成测试,我们有 Thread T1, T2, T3 T4 foreach: Thread // 1 to 4 Call above resource... 我的期望是,每次对资源的调用都会从线程池中获取一个线程,并实例化一个新的“CreateResource”对象。

我想了解web框架中的线程池操作。我在Dropwizard中看到了这种行为(Spring的行为也一样)。 假设我们已经定义了一个资源

@Path("/id/create") 
CreateResource { ...
然后。对于集成测试,我们有

Thread T1, T2, T3 T4
foreach: Thread // 1 to 4
Call above resource...
我的期望是,每次对资源的调用都会从线程池中获取一个线程,并实例化一个新的“CreateResource”对象。但是,正如预期的那样,对资源的每个调用都位于线程池的不同线程上。但是,我看到“CreateResource”在4个API调用中都是相同的对象。i、 e.只有一个“CreateResource”实例

为什么会这样


在哪里可以找到有关此行为的更多信息?

因为frameword选择了这种方式进行设计。无法为DropWizard对话,但SpringBean默认为单例。这是有道理的,因为大多数控制器(和其他bean)无论如何都应该是无状态的(除了对启动时初始化的其他bean的引用)。这是一个很好的开始。。。谢谢