spring boot配置mysql_初学springboot MySQL配置以及问题

首先配置mysql

在pom.xml中添加依赖

org.springframework.boot

spring-boot-starter-jdbc

mysql

mysql-connector-java

runtime

在application.properties配置

spring.datasource.url=jdbc:mysql://localhost:3306/test

spring.datasource.username=root

spring.datasource.password=root

spring.datasource.driver-class-name=com.mysql.jdbc.Driver更换为以下

spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

遇到问题

数据库密码错误会报错“Exception in thread "main" java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)”

mysql数据驱动版本问题

com.mysql.jdbc.Driver不被使用了,需要更改为"com.mysql.cj.jdbc.Driver"

会报错

Loading class com.mysql.jdbc.Driver'. This is deprecated. The new driver class iscom.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.

出现The server time zone value ‘�й���׼ʱ��‘ is unrecogni

需要在你配置mysql数据库的文件的url后拼接“?serverTimezone=UTC”

解决java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

目前不知道是什么原因,反正重新写了一遍配置文件,就好了

Spring中EmptyResultDataAccessException异常产生的原理及处理方法

Spring中使用JdbcTemplate的queryForObject方法,当查不到数据时会抛出异常

当results的size大于1时,还会抛出IncorrectResultSizeDataAccessException异常,以保证返回的记录只有一条。

如果我们想查询结果为空时,返回null而不是抛出异常,该怎么办呢?

Object object = null;

try {

object = jdbcTemplate.queryForObject();

} catch (EmptyResultDataAccessException e) {

return null;

}

return object;

用try-catch捕获

不足:在一开始没有在配置完成后先进行连接测试,导致后面写完才开始测试的时候,废了好多时间修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值