我有一个使用Spring Boot的简单Web MVC应用程序,它与数据库通信; DB是H2,直到现在一直在内存中。我想更改它,因此使用jdbc:h2:file:...
网址。
到目前为止,我还不需要添加任何XML来配置我的应用程序,如果可能的话,我希望它保持这种状态。但我无法弄清楚如何指定不同的JDBC URL。我通过将数据源传递给@Bean
方法获取并检查了数据源:
org.apache.tomcat.jdbc.pool.DataSource@745e6f01{ConnectionPool[
defaultAutoCommit=null;
defaultReadOnly=null;
defaultTransactionIsolation=-1;
defaultCatalog=null;
driverClassName=org.h2.Driver;
maxActive=100;
maxIdle=100;
minIdle=10;
initialSize=10;
maxWait=30000;
testOnBorrow=false;
testOnReturn=false;
timeBetweenEvictionRunsMillis=5000;
numTestsPerEvictionRun=0;
minEvictableIdleTimeMillis=60000;
testWhileIdle=false;
testOnConnect=false;
password=********;
url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;
username=sa;
validationQuery=null;
validationQueryTimeout=-1;
validatorClassName=null;
validationInterval=30000;
accessToUnderlyingConnectionAllowed=true;
removeAbandoned=false;
removeAbandonedTimeout=60;
logAbandoned=false;
connectionProperties=null;
initSQL=null;
jdbcInterceptors=null;
jmxEnabled=true;
fairQueue=true;
useEquals=true;
abandonWhenPercentageFull=0;
maxAge=0;
useLock=false;
dataSource=null;
dataSourceJNDI=null;
suspectTimeout=0;
alternateUsernameAllowed=false;
commitOnReturn=false;
rollbackOnReturn=false;
useDisposableConnectionFacade=true;
logValidationErrors=false;
propagateInterruptState=false;
ignoreExceptionOnPreLoad=false;
}
(newlines mine)
该bean的设置似乎相当复杂,所以我想尽可能少地干扰它 - 只需替换默认的JDBC URL。
如何为Spring配置单独的属性来创建数据源?最好是在Java中,但如果有简洁的XML方式,我也很高兴。我只是想避免为等同于url=...