我有一个@RestController,它有一个注入的@Service bean。我无法理解控制器及其服务的生命周期。它是基于每个请求的吗?还是比这更长?我是 Spring 以及如何管理 bean 的新手。
@RestController
class AppController {
private final AppService appService
AppController(AppService appService) {
this.appService = appService
}
...
}
@Service
class AppService {
private final DataSource dataSource
AppService(DataSource dataSource) {
this.dataSource = dataSource
}
private Sql getSql() {
new Sql(dataSource.connection)
}
...
}
我问的原因是因为我们在服务中实例化了一个 sql 连接,我很好奇我是否可以记忆和重用连接,或者我是否每个请求都有一个需要立即关闭的实例。
春季启动 1.5.2