报错:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ng bean with name '(inner bean)#584d15f2': Cannot resolve reference to bean 'ent ityManagerFactory' while setting constructor argument; nested exception is org.s pringframework.beans.factory.BeanCurrentlyInCreationException: Error creating be an with name 'entityManagerFactory': Requested bean is currently in creation: Is there an unresolvable circular reference?
要用单独一个类定义DataSource,
import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.jdbc.datasource.DriverManagerDataSource; import org.springframework.security.oauth2.provider.token.store.JdbcTokenStore; import javax.sql.DataSource; @Configuration public class DataSourceConfig { @Value("${spring.datasource.url}") private String datasourceUrl; @Value("${spring.datasource.driver-class-name}") private String dbDriverClassName; @Value("${spring.datasource.username}") private String dbUsername; @Value("${spring.datasource.password}") private String dbPassword; @Bean public DataSource dataSource() { final DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName(dbDriverClassName); dataSource.setUrl(datasourceUrl); dataSource.setUsername(dbUsername); dataSource.setPassword(dbPassword); return dataSource; } //token存储数据库 @Bean public JdbcTokenStore jdbcTokenStore(){ return new JdbcTokenStore(dataSource()); } }