怪事
Failed to obtain JDBC Connection; nested exception is java.sql.SQLException: Access denied for user ‘Lin’@‘localhost’ (using password: YES)
常规情况
- 一般为权限问题(下方为别人的解决方法)
https://blog.csdn.net/chuyouyinghe/article/details/79225972
奇葩情况
- 我使用了spring-jdbc中的DriverManagerDataSource来获取数据源
下面是jdbc的配置文件:
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/student
username=root
password=root
下面是spring中数据源的配置:
<!--配置dataSource-->
<bean id="ds" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${driverClassName}"></property>
<property name="url" value="${url}"></property>
<property name="username" value="${username}"></property>
<property name="password" value="${password}"></property>
</bean>
我的测试代码:
运行结果:
查找原因
我使用new的方式创建对象,代替spring的Ioc。
这样运行就不会出现问题。
结果
只要将配置文件里的${username},更换为其它名称即可,
一旦改回username就是报错,查了好久也不知道什么原因,但是问题解决了,有哪位大佬知道可以指点一下小弟。