Mybatis笔记一

1.Mybatis简介

2.快速入门

3.jdbc简介

了解一下就行了,因为以后都用mybatis

4.数据库连接池

就像是共享单车一样用完就换

还,不用频繁地创建和释放资源

常见的数据库连接池种类
连接池切换

在图中的官网找到durid的坐标然后直接引入就行了

5.lombok

pojo包下的实体类通常要写很多的get和set方法,还有string方法,为了解决重复操作带来的麻烦,可以使用lombok

注意:使用之前需要先导入依赖

6.参数占位符

一般情况下用#的参数占位符

7.新增与主键返回

将要新增的数据传到对象里,然后再一对象的方式作为形参传递

8.更新操作

同样是把信息传递到对象里面,然后再把对象传到方法的形参里面

9.查询操作

注意:如果用%#{name}%这种方式就会造成运行后出现%?%,但是用%S{name}%,就会性能低,不安全,所以更加推荐的方法里面用了concat函数,这个函数的作用就是将字符串拼接起来.以后见到模糊匹配应该还能用到

10.自动封装方法

如果实体类对象的属性名和数据库查询返回的字段名不一致,则可以直接在application.propertise里面直接写以下代码

11.xml映射文件

idea里面写SQL语句的方法有两种,一种是通过注解的方法写,另一种是通过xml映射文件写,另一种就是在之前的mapper接口里面通过注解的方式写.但是如果通过xml文件写SQL,也还要在mapper接口里面继续用注解写这个方法.一般简单一些的语句用注解,复杂一些的用xml映射文件

注意:对于保持返回值类型一直这句话,如果你的返回值是一个对象,就需要在resulttype里面写入对象的全类名,如果是一个集合里面是对象,那也要把对象的全类名写进去

12.动态SQL简介

以前写的代码必须三个输入框里面都输入数据才会查询,否则如果有一个是空的就查不出来,而动态sql的作用就是解决这一问题,随着输入的变化而变化

13.动态SQL if与where

如果只用if而不用where,则当name没有输入而gender输入的情况下,SQL语句就会在1前面多出来一个and,所以一般用where

14.动态SQL if与set

与<where>标签的用法差不多,用于替换update语句里面的set,如果不用<set>标签,那么就会造成在sql语句前面多一个,的问题

15.动态SQL foreach

主要记住其中的五个属性都代表什么

16.动态SQL sql与include

sql与include主要用于解决重复代码的问题,如下图中标红的代码

则此时可以用sql标签进行抽取,并随意设置一个id

然后再将重复的代码部分使用include进行替换,其中的refid需要与与sql设置的id保持一致

相关推荐
白露与泡影1 天前
2026大厂Java面试题大全!牛客网最新版
java·开发语言
longxiangam1 天前
esp-idf 中 mipi dsi 使用的笔记
笔记
EntyIU1 天前
JVM内存与GC笔记
java·jvm·笔记
XS0301061 天前
并发编程 六
java·后端
yaoxin5211231 天前
419. 现代 Java IO 最佳实践 - 写入文本文件
java·windows·python
雪宫街道1 天前
synchronized 锁的范围:对象锁、类锁与代码块锁
java·jvm·后端·面试
x***r1511 天前
linux安装 jdk-8u291-linux-x64.tar.gz 详细步骤(解压配置环境变量)
java
星恒随风1 天前
C语言数据结构排序算法详解(下):冒泡排序、快速排序、归并排序和计数排序
c语言·数据结构·笔记·学习·排序算法
极光代码工作室1 天前
基于SpringBoot的校园论坛系统
java·springboot·web开发·后端开发
XS0301061 天前
Spring Bean 作用域 & 生命周期
java·后端·spring