最近在学ssm框架,写项目时遇到了数据库连接的问题Access denied for user ‘root’@‘localhost’ (using password: YES)
项目使用的是c3p0连接池,在spring中配置的数据库连接,通过外部配置文件的方式配置,检查了每个地方都没有错,数据库配置等都是对的,上网查了给出的答案是数据库密码什么的,这个可以自行百度,
后来才发现我这里的问题是外部配置文件名称的问题
错误的写法
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://localhost:3306/ssmbuild?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
username=root
password=12345
正确的写法
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useUnicode=true&characterEncoding=UTF-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
jdbc.username=root
jdbc.password=1314520
在spring配置文件中
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${jdbc.driver}"/>
<property name="jdbcUrl" value="${jdbc.url}"/>
<property name="user" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
因为没加jdbc报错,加了之后就是正常运行了,原因未知,大佬可以在评论区解答一些原因。