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保持一致

相关推荐
既然如此,那就开摆12 小时前
精读笔记06_CoCa
笔记
丑八怪大丑13 小时前
MyBatis
mybatis
程序员张313 小时前
SpringBoot集成BCrypt密码加密库
java·spring boot·后端
闲猫13 小时前
Spring AI Agentic 模式(第1部分):Agent Skills——模块化、可复用的能力
java·人工智能·spring
源图客13 小时前
云途物流API开发-鉴权认证(Java)
java·网络·python
liguojun202513 小时前
篮球馆自动计时收费系统:从规则配置到自动结算的全流程拆解
java·大数据·运维·人工智能·物联网·1024程序员节
三品吉他手会点灯13 小时前
嵌入式机器学习 - 学习笔记1.1.1 - 什么是机器学习?
c语言·人工智能·笔记·嵌入式硬件·学习·机器学习
qq57521731913 小时前
Notepad++下载和安装
笔记·notepad++·记事本
9523614 小时前
RabbitMQ-基础操作
java·spring boot·分布式·后端·spring·rabbitmq
卓怡学长14 小时前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea