我想在Spring 4.0.3上下文中使用Hikari
CP
,但似乎我缺少了一些东西。
我的bean配置如下所示:
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource">
<constructor-arg>
<bean class="com.zaxxer.hikari.HikariConfig">
<constructor-arg>
<props>
<prop key="dataSource.driverClassName">${database.driver}</prop>
<prop key="dataSource.jdbcUrl">${database.database.jdbc.url}</prop>
<prop key="dataSource.port">${database.port}</prop>
<prop key="dataSource.databaseName">${database.name}</prop>
<prop key="dataSource.user">${database.user}</prop>
<prop key="dataSource.password">${database.password}</prop>
</props>
</constructor-arg>
</bean>
</constructor-arg>
</bean>
但我有一个例外:
Caused by: java.lang.IllegalArgumentException: one of either dataSource or dataSourceClassName must be specified
at com.zaxxer.hikari.HikariConfig.validate(HikariConfig.java:655)
at com.zaxxer.hikari.HikariDataSource.<init>(HikariDataSource.java:66)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148)
... 15 more
我试图使用HSQL
org.hsqldb.jdbc.JDBCDataSource配置dataSourceClassName
那样:
<prop key="dataSourceClassName">org.hsqldb.jdbc.JDBCDataSource</prop>
也这样:
<prop key="dataSource.ClassName">org.hsqldb.jdbc.JDBCDataSource</prop>
两次我都有以下异常:
Caused by: java.lang.RuntimeException: java.beans.IntrospectionException: Method not found: setPort
at com.zaxxer.hikari.util.PropertyBeanSetter.setProperty(PropertyBeanSetter.java:109)
at com.zaxxer.hikari.util.PropertyBeanSetter.setTargetFromProperties(PropertyBeanSetter.java:61)
at com.zaxxer.hikari.pool.HikariPool.initializeDataSource(HikariPool.java:497)
... 23 more
Caused by: java.beans.IntrospectionException: Method not found: setPort
at java.beans.PropertyDescriptor.<init>(PropertyDescriptor.java:110)
at com.zaxxer.hikari.util.PropertyBeanSetter.setProperty(PropertyBeanSetter.java:97)
... 25 more
有人可以向我展示 可以与HSQL DB* 一起使用的 Hikari CP Spring 4 bean配置吗? *
我 对 MySql,PG等 不感兴趣 ,因为我知道如何使它们工作。但是我无法用HSQL完成它。
谢谢,
使用的技术:Java8,Spring 4.0.3,HSQL 2.3.2
一种完成工作的方法是提供一个DataSource对象的实例:
<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource">
<constructor-arg>
<bean class="com.zaxxer.hikari.HikariConfig">
<property name="dataSource">
<bean class="org.hsqldb.jdbc.JDBCDataSource">
<property name="url" value="${database.database.jdbc.url}"/>
<property name="databaseName" value="${database.name}"/>
<property name="user" value="${database.user}"/>
<property name="password" value="${database.password}"/>
</bean>
</property>
</bean>
</constructor-arg>
</bean>
当然,还有其他解决方案。
HTH,
在传统的web.xml类型配置中,您可以像这样配置上下文参数 web.xml 这是如何在Spring启动中实现的。我有一个需要参数的过滤器。 我使用的是,并包含了
今天,我将我的项目从Spring Boot1.5.9更新到2.1.1,我的一些测试停止工作。当我开始测试时,控制台会弹出错误: com.example.rest.config.SecurityConfig中的authEntryPoint字段需要一个类型为“com.example.rest.service.auth.EntryPoints.AuthenticationEntryPoint”的bean
出于某些原因,我需要以不同于标准的方式为Spring上下文命名XML文件。 是的,我知道这是一个基本问题,关于堆栈溢出,有几种回答,例如: Spring上下文配置 Spring MVC上下文Hiearchy Spring-MVC:什么是“上下文”和“命名空间”? 然而,我的问题比那些更棘手一点,因为系统只有在web.xml文件同时具有 和 如果我只删除标签A: Java语言io。FileNotFo
使用石英2.2.2 Spring 4.2.4.释放 如何给我配置石英?,只用阳极化全部 启动我的系统好吗 问题包含2 jobFactory for system public SchedulerFactoryBean SchedulerFactoryBean()方法的第一个构建是另一个类的第二个构建,我想是Spring! 我的Quartz配置属性是: 我尝试使用和bean“springQuartz
我有以下项目结构: src/main/resources/meta-inf/applicationcontext.xml src/webapp/web.xml .另外,在构建部分的pom.xml中,我将最终名称设置为“bet-manager-api”。我做错了什么?为什么没有伐木?我检查了tomcat/logs/中的所有日志,但没有找到任何重要的日志。谢谢