Spring Boot 中bean 初始化中的`new` 关键字会导致内存泄漏吗?
`new` keyword in bean initialization in Spring Boot will cause a memory leak?
我们不使用 new
关键字来初始化新 bean。但是我可以像这样用 new
关键字初始化新 bean
@Configuration
public class MyConfiguration {
@Bean(name = "qaDataSource")
public JdbcTemplate customJdbcTemplate() {
DataSource ds = DataSourceBuilder.create()
.url("jdbc:postgresql://myserver:1111/dbName")
.username(env.getProperty("spring.secondDatasource.username"))
.password(env.getProperty("spring.secondDatasource.password"))
.driverClassName(env.getProperty("spring.secondDatasource.driverClassName"))
.build();
return new JdbcTemplate(ds);
}
在这种情况下 new
会导致任何内存泄漏吗?
不会,这种情况下不会有内存泄漏。
我们不使用 new
关键字来初始化新 bean。但是我可以像这样用 new
关键字初始化新 bean
@Configuration
public class MyConfiguration {
@Bean(name = "qaDataSource")
public JdbcTemplate customJdbcTemplate() {
DataSource ds = DataSourceBuilder.create()
.url("jdbc:postgresql://myserver:1111/dbName")
.username(env.getProperty("spring.secondDatasource.username"))
.password(env.getProperty("spring.secondDatasource.password"))
.driverClassName(env.getProperty("spring.secondDatasource.driverClassName"))
.build();
return new JdbcTemplate(ds);
}
在这种情况下 new
会导致任何内存泄漏吗?
不会,这种情况下不会有内存泄漏。