springboot 整合mybatis

PS:一直在公司,用的是公司封装的框架。现在离职,就打算自己在自己电脑上基于标准的流程搭建个项目。

1. 下载一个模板工程:(Spring Initializr 可以下载),然后导入到开发软件中(我用的idea)

PS:今天看到网上写的,通过idea 自动生成工程(参考链接:Springboot Web:从零开始写helloworld_流年亦梦的博客-CSDN博客)。我看了下我的IDEA,发现么得。又百度了一把,发现要自行加个插件(老一点的博客,写的是搜索Spring boot ,反正我是搜不到,又有人建议搜Spring Assistant  插件,安装后,果然了创建的入口,但是在最后报错 404, 具体原因待后续再看看)

2. 配置myabtis 整合需要的POM 依赖:

添加两个pom依赖:(connector版本会有小故事)

<dependency>
   <groupId>org.mybatis.spring.boot</groupId>
   <artifactId>mybatis-spring-boot-starter</artifactId>
   <version>1.3.1</version>
</dependency>
<dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>8.0.20</version>
</dependency>

3. 数据库配置:

在配置文件添加(默认生成的是application.properties):

#数据库驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#连接串
spring.datasource.url=jdbc:mysql://localhost:3306/****?useUnicode=true&characterEncoding=UTF-8&useSSL=true&&serverTimezone=UTC
#用户名
spring.datasource.username=root
#密码
spring.datasource.password=******
#mapper路径 - 改成自己实际的
mybatis.mapper-locations=classpath:/mapper/*Mapper.xml

4. 启动类中要加上@MapperScan("com.example.dao-修改为自己实际的dao层路径") 注解;

5. Mapper文件书写注意 namespace 的对应。

3. 操作过程中遇到的小问题及分析处理:

  • 驱动导致的小九九:刚开始参考网上写的,驱动配置的com.mysql.jdbc.Driver,即如下:spring.datasource.driver-class-name=com.mysql.jdbc.Driver,
  • 启动提示:Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
  • 疑问:
  • a. com.mysql.jdbc.Driver 和 com.mysql.cj.jdbc.Driver 驱动有啥使用上的差距?
  • 方案一:搜了下 mysql-connector-java 6以及以上,才改成com.mysql.cj.jdbc.Driver。于是我把mysql-connector-java的版本改到了5.1.37,发现报错提示如下:
  • 原因呢?搜了下,是因为 com.mysql.jdbc.Driver 在useSSL=true 情况下,会鉴权不通过,然后报错。于是,把 useSSL 改为false.问题解决。
  • 方案二:用com.mysql.cj.jdbc.Driver驱动。然后又发现了强调,这个驱动,时区需要设置:serverTimezone=UTC,验证也没毛病。
  • 配置文件导致的小九九:瞅了瞅发现启动日志打印了一句话:No active profile set, falling back to 1 default profile: "default". 提醒了我,当前项目比如多套环境,不同环境用不同的配置该如何设置的?
  • 有一个参数叫做:spring.profiles.active ,不同环境配置这个参数配置不同,比如我本地启动dev,如下:

4. 思路扩展(下篇分解):

  • 为啥加了 mybatis-spring-boot-starter 包依赖,就可以集成mybatis, spring中的starter是个啥?
  • 上面日志打印报错SPI自动加载,啥叫SPI自动加载?
  • myabtis 加载步骤分享;

5. 几个小工具:

  • a. mybatis mapper文件和Dao的自动对应插件;
  • b. POM 依赖树直接插件;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值