我已经从以下网站下载了该项目: https://examples.javacodegeeks.com/enterprise-java/spring/jdbc/spring-jdbctemplate-example/ 并且正在使用Eclipse EE,并在Mac计算机上安装了mysql。但是,当我尝试运行App.java时,出现以下错误消息,并且不知道为什么。
Exception in thread "main"
org.springframework.jdbc.CannotGetJdbcConnectionException: Could
not get JDBC Connection; nested exception is java.sql.SQLException:
Access denied for user 'root'@'localhost' (using password: YES) at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(Data
SourceUtils.java:80)
我对此很陌生,不确定是否需要安装任何其他组件或是否必须进行一些配置。如何解决此异常,以便代码运行?
答案 0 :(得分:1)
确保您的MySql服务器首先运行,并且您提供了正确的凭据以连接到数据库服务器。看一下数据源的XML bean配置:
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/test" />
<property name="username" value="root" />
<property name="password" value="root" />
</bean>
请确保Driver-Class,用户名和密码的值适用于您的数据库。如果您使用的是maria-db数据库服务器,则需要为其提供驱动程序类,而不是标准的MySql,我认为并非如此。
答案 1 :(得分:0)
您需要根据您的mysql版本添加mysql-connector的依赖关系。
<!-- MySQL Driver -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
</dependency>
使用此连接URL解决与MySQL建立连接时的问题
<property name="url" value="jdbc:mysql://localhost:3306/Your_DBName?useSSL=false" />