我是否需要为我的 Spring Data JDBC 项目配置下面示例中的 bean?
Do I need to configure the beans in the example below for my Spring Data JDBC project?
我是否需要为我的 Spring 数据 JDBC 项目配置下面示例中的 bean?
即使没有这些 beans,我也能够让我的存储库查询正常工作。
据我了解,NamedParameterJdbcOperations 仅在内部用于向数据库提交 SQL 语句,开发人员不会直接使用它。
希望得到更多关于此的说明。
@SpringBootApplication
@EnableJdbcRepositories
public class SpringDataJdbcApplication extends AbstractJdbcConfiguration
{
public static void main(String[] args)
{
SpringApplication.run(SpringDataJdbcApplication.class, args);
}
@Bean
@ConfigurationProperties(prefix="spring.datasource")
public DataSource dataSource()
{
DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
return dataSourceBuilder.build();
}
@Bean
NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource)
{
return new NamedParameterJdbcTemplate(dataSource);
}
@Bean
PlatformTransactionManager transactionManager()
{
return new DataSourceTransactionManager(dataSource());
}
}
如果您在 Maven 或 Gradle 的依赖项中包含 org.springframework.boot:spring-boot-starter-data-jdbc
,通过“约定优于配置”范例,您根本不需要创建任何 bean 包含 dataSource
豆。只需 main
方法就足够了。将自动创建那些必需的 bean。
@SpringBootApplication
public class SpringDataJdbcApplication
{
public static void main(String[] args)
{
SpringApplication.run(SpringDataJdbcApplication.class, args);
}
}
在application.yml
里面
...
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://dbhost/db
username: xxx
password: xxx
max-active: 3
...
我是否需要为我的 Spring 数据 JDBC 项目配置下面示例中的 bean?
即使没有这些 beans,我也能够让我的存储库查询正常工作。
据我了解,NamedParameterJdbcOperations 仅在内部用于向数据库提交 SQL 语句,开发人员不会直接使用它。
希望得到更多关于此的说明。
@SpringBootApplication
@EnableJdbcRepositories
public class SpringDataJdbcApplication extends AbstractJdbcConfiguration
{
public static void main(String[] args)
{
SpringApplication.run(SpringDataJdbcApplication.class, args);
}
@Bean
@ConfigurationProperties(prefix="spring.datasource")
public DataSource dataSource()
{
DataSourceBuilder dataSourceBuilder = DataSourceBuilder.create();
return dataSourceBuilder.build();
}
@Bean
NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource)
{
return new NamedParameterJdbcTemplate(dataSource);
}
@Bean
PlatformTransactionManager transactionManager()
{
return new DataSourceTransactionManager(dataSource());
}
}
如果您在 Maven 或 Gradle 的依赖项中包含 org.springframework.boot:spring-boot-starter-data-jdbc
,通过“约定优于配置”范例,您根本不需要创建任何 bean 包含 dataSource
豆。只需 main
方法就足够了。将自动创建那些必需的 bean。
@SpringBootApplication
public class SpringDataJdbcApplication
{
public static void main(String[] args)
{
SpringApplication.run(SpringDataJdbcApplication.class, args);
}
}
在application.yml
里面...
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://dbhost/db
username: xxx
password: xxx
max-active: 3
...