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>
相关推荐
未秃头的程序猿8 小时前
虚拟线程上线一周后翻车了——pinning问题排查实录
java·后端·架构
wuminyu9 小时前
JDK21解决虚拟线程IO阻塞原理剖析
java·linux·c语言·jvm·c++
带刺的坐椅9 小时前
Solon AOT & Native:三段式编译,从 Java 到原生可执行文件
java·aot·solon·native
AI_paid_community9 小时前
如何使用 Claude 在 AI 时代快速入局新的行业?(经验贴)
前端·javascript·后端
AI多Agent协作实战派9 小时前
AI多Agent协作系统实战(三十六):代码里明明写了,编译完怎么没了?
后端
柠檬味拥抱9 小时前
代码看腻了,我让 Seed Evolving 把整个仓库搓成了一座能走进去的 3D 城市
后端
程序员良辰9 小时前
【TongWeb8】使用 Crontab 定时重启和检测 TongWeb 服务
java·中间件·tomcat
菜冻鱼9 小时前
Python-sklearn-特征工程
开发语言·人工智能·python·机器学习·numpy·matplotlib·sklearn
mit6.8249 小时前
archived
后端·python·flask
用户298698530149 小时前
效率工具分享:3 款免费 Markdown 转 Word 在线转换器
人工智能·后端