我通过springboot应用程序连接到oracle db时遇到异常 . 但我可以使用sql developer连接到这个数据库 .

我使用HikariCP连接数据库

stacktrace的一部分是附加在这里

Blockquote 018-06-25 13:09:21.778错误--- [restartedMain] osbSpringApplication:应用程序启动失败org.springframework.beans.factory.UnsatisfiedDependencyException:创建文件[***]中定义名称为'collectionApiController'的bean时出错***]:通过构造函数参数1表示的不满意的依赖性;嵌套异常是org.springframework.beans.factory.UnsatisfiedDependencyException:创建名为'collectionServiceImpl'的bean时出错:通过字段'collectionRepository'表示的不满意的依赖关系;嵌套异常是org.springframework.beans.factory.UnsatisfiedDependencyException:创建文件[******]中定义名称为'collectionRepositoryImpl'的bean时出错:通过构造函数参数0表示的不满意依赖;嵌套异常是org.springframework.beans.factory.BeanCreationException:在类路径资源[**** / AppConfig.class]中定义的名称为'namedParameterJdbcTemplate'的bean创建错误:通过工厂方法进行Bean实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化[org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate]:工厂方法'namedParameterJdbcTemplate'抛出异常;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建在类路径资源[***** / AppConfig.class]中定义名称为'dataSource'的bean时出错:通过工厂方法的Bean实例化失败;嵌套异常是org.springframework.beans.BeanInstantiationException:无法实例化[javax.sql.DataSource]:工厂方法'dataSource'抛出异常;嵌套异常是java.lang.RuntimeException:无法在org.springframework.beans.factory的org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)获取jdbcUrl = ****的驱动程序实例.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:189)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1193)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory) .java:1095)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)at org . springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:306)at at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)位于org.springframework.beans.factory的org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) . org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:)中的org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)中的support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197): 867)org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)atg.springframework.boot.SpringApplication .refresh(SpringApplication.java:693)org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java: 360)org.springframework.boot.SpringApplication.run(SpringApplication.java:303)org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)org.springframework.boot.SpringApplication.run(SpringApplication.java) :1107)位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at的sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)的lk.dialog.crm.collectionms.CollectionMsApplication.main(CollectionMsApplication.java:35) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at atjava.lang.reflect.Method.invoke(Method.java:497)at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)Blockquote Blockquote

public class AppConfig {

private String jdbcUrl;
private String user;
private String password;

@Bean
@Scope(SCOPE_PROTOTYPE)
public Logger logger(InjectionPoint injectionPoint) {
    return LoggerFactory.getLogger(injectionPoint.getMember().getDeclaringClass().getName());
}

public AppConfig(@Value("${application.datasource.url}") String jdbcUrl,
                 @Value("${application.datasource.user}") String user,
                 @Value("${application.datasource.password}") String password) {
    this.jdbcUrl = jdbcUrl;
    this.user = user;
    this.password = password;



}

@Bean
public DataSource dataSource() {
    HikariConfig config = new HikariConfig();
    config.setJdbcUrl(jdbcUrl);
    config.setUsername(user);
    config.setPassword(password);
    config.setMaximumPoolSize(15);
    return new HikariDataSource(config);
}

}

Blockquote