SpringBoot学习(三)-整合JDBC、Druid、MyBatis
发布时间:2024年01月05日
注:此为笔者学习狂神说SpringBoot的笔记,其中包含个人的笔记和理解,仅做学习笔记之用,更多详细资讯请出门左拐B站:狂神说!!!
一、整合JDBC使用(理解)
创建项目
勾选依赖启动器
查看依赖
1、配置连接数据库的信息
-
选择数据库
-
挑选mysql版本
2、调试数据源
-
测试数据源
-
获得数据库的连接,查看连接
- 修改时区,否则会出现版本报错
- 假如时区报错,增加一个时区配置就ok了:serverTimezone=UTC
可以运行看看,有没报错
3、查看源码,理解底层配置信息
- 套路:有properties,就会有某某AutoCofiguration
4、springboot已经配置好许多模板bean,拿来即用 CRUD
1)测试数据库的操作
①查询数据库信息
- 注:只是修改数据库,不需要重启项目,数据库才是最重要的
②增加数据库信息
在增加信息的时候,jdbc可以直接写sql,不需要传值
springboot已经把很多操作封装成jdbcTemplate了,很多步骤可以省略了
③更新数据库消息
点进去看一下update
- 方法1:直接在sql语句上写数据
- 方法2:原生的jdbc执行sql语句和传递参数的方法,来写数据
④删除数据库信息
效果:链改接参数就可以了
再查看一下源码:
查看下内置导入的包
去配置文件修改即可
自定义配置的要求:
- spring.datasource.type=???
二、整合Druid数据源
1、了解数据源
- d导入依赖Druid数据源,用最新的,报错再降级
- 看源码,提升快
- 看别人的包,理解一下,看看需要配什么等等
- filter:用来监控的
2、更改数据源
3、添加Druid的默认配置
1)导入log4j依赖
4、测试Druid数据源下的配置功能
- @Configuration==相当于以前的bean.xml中的配置,现在都简化了
1)实现application.yaml与DruidConfig绑定在一起
-
将DruidConfig绑定在一个bean上,跟配置文件一起,就能绑上了
-
如果想使用一些私有化属性,如果不配置的话,私有化属性不会生效
-
-
将druidDataSource加入到容器当中,就不需要springboot帮我们加到容器中了
2)后台监控
①配置后台监控
后台监控页面都写好了,直接拿来用就好
- 设置初始化参数setInitParameters()
②添加具体配置
③访问后台监控
测试一下sql:
④小结:想注册什么,new就完事了
⑤注册过滤请求的
加入最重要的东西
三、整合mybatis
1、准备工作
1)创建新项目
2)勾选依赖
- JDBC API
- Spring Web
- MySQL driver
3)浏览官方文档
4)导入依赖
5)配置全局配置文件
6)测试连接效果
2、使用mybatis连接MySQL
1)连接上mybatis
2)构造实体类
构造mapper接口类(mapper层=dao层)
第一种接口扫描包的方式:直接在包的类名上扫描,加个@Mapper
第二种方式:在启动类里启动扫描具体的包名
- 之前的spring里面,接口map或者dao都会有对应的mapper.xml文件在同一个文件夹里面
- 现在,统一在resource里创建mapper,在里面创建.xml文件(写在resource里面,就不能用class来访问了,不能将注解和class同时使用)
3、构造对应的mapper.xml文件
1)去官方找文档,复制.xml的基本格式
- mapper namespace=“指定的mapper文件名”
4、在全局配置文件中,这和mybatis
5、构造controller层
- controller在后端(dao)与前端(页面)之间
将数据库连接添加到员工管理系统
- 刚写的项目里面没有service层,直接是,controller调用mapper层(dao层)的
- 表单传入的属性会封装成一个对象,把属性添加表单就可
- 实体类默认无参构造,无参构造可以在属性范围内随机的生成随机属性的对象,如果有需要的话。
- 有参构造,一定要完整的属性,实体类才能封装成对象。
- 除了可以用dao/mapper.xml以外,还可以使用@注解的方式(在接口的方法上面添加对应注解)
SpringBoot学习(三)-整合JDBC、Druid、MyBatis 开发的学习笔记到此完结,笔者归纳、创作不易,大佬们给个3连再起飞吧
文章来源:https://blog.csdn.net/kdzandlbj/article/details/135398998
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!