错误信息显示在 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如何关闭开发者模式 怎么关闭开发者模式
