Spring 项目中使用context:property-placeholder的一个大坑

<context:property-placeholder location="classpath:dbconfig.properties"/>
<bean id="dataSource2" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="user" value="${username}"/>
        <property name="password" value="${password}"/>
        <property name="jdbcUrl" value="${jdbcUrl}"/>
        <property name="driverClass" value="${driverClass}"/>
 </bean>

注意这里有一个username,实际上dbconfig.properties写的也是username,而且idea的提示也指向了dbconfig.properties中的username
Spring 项目中使用context:property-placeholder的一个大坑
然而数据库连接时,出现了异常,仔细观察发现
Spring 项目中使用context:property-placeholder的一个大坑
竟然不知道为什么用户名变成了windows的用户名,而非dbconfig.properties中的

解决方法:dbconfig.properties中不要写username,改成别的,比如sqlusername,当然spring配置文件这里也是要改的

<bean id="dataSource2" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="user" value="${sqlusername}"/>
        <property name="password" value="${password}"/>
        <property name="jdbcUrl" value="${jdbcUrl}"/>
        <property name="driverClass" value="${driverClass}"/>
</bean>

环境:jdk11.0.6,spring5.2.3

上一篇:NTP网络授时服务器在学校的解决方案


下一篇:GPS、WiFi、基站、AGPS几种定位原理介绍与区别