错误信息显示在 Spring
容器中没有 BookDao
类型的 bean
。为什么会出现这种情况呢?
原因是 Mybatis
会扫描接口并创建接口的代码对象交给 Spring
管理,但是现在并没有告诉 Mybatis
哪个是 dao
接口 。而我们要解决这个问题需要在BookDao
接口上使用 @Mapper
,BookDao
接口改进为
@Mapperpublic interface BookDao { @Select("select * from tbl_book where id = #{id}") public Book getById(Integer id);}
注意:2.7 使用Druid数据源现在我们并没有指定数据源,
SpringBoot
版本低于2.4.3(不含),Mysql驱动版本大于8.0时,需要在url连接串中配置时区jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
,或在MySQL数据库端配置时区解决此问题
SpringBoot
有默认的数据源,我们也可以指定使用 Druid
数据源,按照以下步骤实现- 导入
Druid
依赖
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.16</version></dependency>
- 在
application.yml
配置文件配置
可以通过spring.datasource.type
来配置使用什么数据源 。配置文件内容可以改进为
spring:datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC username: root password: root type: com.alibaba.druid.pool.DruidDataSource
经验总结扩展阅读
- JavaSPI详解
- day04-JavaScript01
- Java安全之Tomcat6 Filter内存马
- 沁恒CH32V003F4P6 开发板上手报告和Win10环境配置
- visual studio插件开发-Menu
- JavaScript的异步编程之Promise
- Git新技能-stash操作
- 四十八 SpringCloud微服务实战——搭建企业级开发框架:【移动开发】整合uni-app搭建移动端快速开发框架-使用第三方UI框架
- 房贷办不下来开发商急吗
- opporeno5如何关闭开发者模式 怎么关闭开发者模式