关于SSM项目,连接MYSQL引入外部配置文件时,username不能被正确解析的问题

如题,在我们整合SSM项目时,为了配置更加灵活,尝尝把数据库的四大配置新建到外边properties,然后通过下面这个引入配置文件

<context:property-placeholder location="db.properties"/>

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
    </bean>

之后再配置数据源的时候就可以用spEl表达式引入,很简单一个事儿,然后神奇的问题的出现了,我的demo在mac上可以运行,在windows上死活不行,而且一直报这个错误

关于SSM项目,连接MYSQL引入外部配置文件时,username不能被正确解析的问题

   为什么username=root,会被解析为我电脑账户的名字???,一开始我没有发现这个坑,直到我换了无数次mysql的驱动版本,最后发现只要properties中别用username配置root就可以了,为什么这个问题我迟迟没有发现,因为IDEA会将配置文件导入提示到代码中,像这样,所以我觉得这和在spring配置文件中直接写root是一个效果,坑了我一天

关于SSM项目,连接MYSQL引入外部配置文件时,username不能被正确解析的问题

相关推荐