【发布时间】:2020-12-04 06:04:25
【问题描述】:
我是 Spring Boot 新手,我想用 jdbc 将我的数据库连接到 Spring Boot 项目。它仅对一个数据库成功,当我将数据库名称更改为另一个数据库时,它将不起作用。在我的项目中,我只将数据库连接到 Spring Boot。所以我认为它应该在数据库名称更改时起作用。如果有人可以帮助我解决我的问题,我将不胜感激。
错误
Access denied for user ''@'localhost' to database 'daddycoffeeshop_db'.
and
Error creating bean with name 'jdbcConverter' defined in class path resource
application.properties
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/daddycoffeeshop_db
spring.datasource.username=root
spring.datasource.password=
这里 daddycoffeeshop_db 不工作,但 test 数据库工作。为什么会这样?
其他代码... DaddyCoffeeShoApplication.java
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DaddyCoffeeeShopApplication {
public static void main(String[] args) {
SpringApplication.run(DaddyCoffeeeShopApplication.class, args);
}
}
TestData.java
package com.example.demo;
import javax.sql.DataSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
@Component
public class TestData implements CommandLineRunner {
@Autowired
private JdbcTemplate jt;
@Autowired
private DataSource ds;
@Override
public void run(String... args) throws Exception {
String sql = "INSERT INTO RODUCT_DETAILS VALUES(?,?,?,?)" ;
int count = jt.update(sql, 10, "A", 234.45,"this is babysoap");
System.out.print("Inserted Rows" + count);
}
}
【问题讨论】:
-
该数据库是否具有与测试数据库相同的登录凭据?或者您用来访问 SQL 数据库的用户是否具有访问数据库的权限?
-
你检查过你本地的“daddycoffeeshop_db”数据库吗?
-
@JaeheonShim 我对我创建的所有数据库都使用相同的登录凭据。
-
您的属性有误。
spring.datasource.data-username错误应该是spring.datasource.username的密码相同。还要删除",除非它确实是您的用户名的一部分。您的密码也是一个空格,我怀疑它是实际密码。 -
该错误清楚地表明您正在连接没有用户,因此您的属性开始时是错误的。
Access denied for user ''@'localhost' to database 'daddycoffeeshop_db'.不包含用户名。如果是root@localhost。我怀疑你的密码是空的。
标签: java spring spring-boot jdbc spring-jdbc