JavaWeb——Mybatis

6. Mybatis

  1. MyBatis是一款优秀的持久层框架,用于简化JDBC的开发

6.1. Mybatis入门

6.1.1. 入门程序
6.1.2. JDBC
6.1.3. 数据库连接池
6.1.4. Lombok

6.2. Mybatis基础操作

6.2.1. 删除
6.2.1.1. 根据主键删除
6.2.1.2. 预编译SQL

#{id}在编译过程中会替换成?

6.2.1.3. SQL注入
6.2.1.4. 参数占位符
6.2.2. 新增
6.2.2.1. 主键返回
6.2.3. 更新
6.2.4. 查询
6.2.4.1. 根据id查询
6.2.4.2. 数据封装
6.2.4.2.1. 存在问题
6.2.4.2.2. 解决方案
  1. 给字段起别名,让别名与实体类的属性名保持一致
  2. 通过@Results和@Result注解手动映射封装
  3. 开启Mybatis的驼峰命名自动映射开关(推荐
6.2.4.3. 条件查询
6.2.4.4. 字符串拼接函数concat
6.2.4.5. 参数名说明

6.3. XML映射文件

6.3.1. 规范
6.3.2. Mybatis插件
6.3.3. 注解配置/XML文件配置
  1. 注解,主要是来完成一些简单的增删改查的功能。
  2. XML文件,可以实现更复杂的SQL功能

6.4. 动态SQL

  1. 随着用户的输入或外部条件的变化而变化的SQL语句,叫动态SQL
6.4.1. <if><where><set>

<set>:动态的在行首插入SET关键字,并会删除额外的逗号,在update语句中

6.4.2. <foreach>
6.4.3. <sql><include>
相关推荐
ltl2 小时前
位置编码:为什么需要它,为什么用正弦
后端
risc1234562 小时前
python 的字符串前缀
开发语言·python
小程故事多_802 小时前
Agent Loop 核心突破,上下文压缩四大流派,重新定义窗口资源利用率
java·开发语言·人工智能
明月_清风2 小时前
Go 函数设计的工程智慧:多返回值、闭包与那些"反直觉"的选择
后端·go
如竟没有火炬2 小时前
字符串相乘——int数组转字符串
开发语言·数据结构·python·算法·leetcode·深度优先
却尘2 小时前
一个 `&` 引发的血案:改完配置 pipeline 装聋作哑,顺便重学了 Python/Go/Java
后端·go
吃好睡好便好2 小时前
在Matlab中绘制三维等高线图
开发语言·python·学习·算法·matlab·信息可视化
倚栏听风雨2 小时前
Spring AI 实战:用 JdbcChatMemory + MySQL 给 AI 接上「长期记忆」
后端
天若有情6732 小时前
自制C++万能字符串流式库 formort.h|对标标准库endl,零拷贝链式拼接神器
开发语言·c++
神仙别闹2 小时前
基于Java+MySQL实现(GUI)医院管理系统
java·mysql·oracle