CSNotesCSNotes
TODO
数据库
Java
SSM
React
学习路线
分布式
Redis
实用工具
GitHub
TODO
数据库
Java
SSM
React
学习路线
分布式
Redis
实用工具
GitHub
  • 第一阶段 Spring 核心(Summer IOC & AOP)

    • 一、Spring 总览
    • 二、IoC 控制反转
    • 三、Bean 的生命周期
    • 四、注解(@Component / @Service / @Autowired)
    • 五、AOP 面向切面编程
    • 六、XML 配置方式
    • 七、Maven 依赖管理
    • 八、三层架构(Controller / Service / Dao)
  • 第二阶段 SpringMVC Web 层(Summer-MVC)

    • 一、SpringMVC 总览
    • 二、DispatcherServlet 核心分发器
    • 三、@RequestMapping 注解
    • 四、@RequestParam 注解
    • 五、@RequestHeader 注解
    • 六、REST API 设计规范
  • 第三阶段 MyBatis 数据访问(MineBatis 对照)

    • 一、常见存储介质
    • 二、数据库表与 Java 实体类的映射关系
    • 三、MyBatis 总览
    • 四、MyBatis XML 标签(select/if/where/foreach)
    • 五、MyBatis 一级缓存与二级缓存
  • 第四阶段 SpringBoot 自动装配(Summer-Boot)

    • 一、SpringBoot 自动装配原理与 Starters
  • 第五阶段 单元测试(JUnit & Mock)

    • 一、JUnit 单元测试与 Mock
  • 第六阶段 SpringCloud 微服务(Summer-Cloud)

    • 一、微服务架构总览
    • 二、注册中心(Nacos / Eureka)
    • 三、API 网关(Gateway)
    • 四、服务容错与流量控制 Sentinel
    • 五、RPC 框架(Dubbo 等)
    • 六、MQ 消息队列在微服务中的应用

三、MyBatis 总览

MyBatis 中#{}和${}的区别

MyBatis 在处理#{}时,会预编译,将 SQL 中的#{}替换成?号,会自动加单引号

MyBatis 在处理${}时,会把${}替换成变量的值

$要手动加单引号

使用#{}可以有效的防止 SQL 注入。

MyBatis 映射文件

ORM(Object Relationship Mapping)对象关系映射

对象:Java 的实体类对象

关系:关系型数据库

映射:两者之间的对应关系

Java 概念数据库概念
类表
属性字段/列
对象行

SqlSession 代表 Java 程序和数据库之间的会话。

SqlSessionFactory:生产 SqlSession 的工厂

工厂模式:如果创建某一个对象,使用的过程基本固定,那么我们可以把创建这个对象的方法封装到一个“工厂类”中,以后都使用这个工厂类来“生产”我们需要的对象。

模糊查询

select * from t_user where username like "%"#{username}"%"
编辑此页
上次更新: 2026/9/18 20:24
Prev
二、数据库表与 Java 实体类的映射关系
Next
四、MyBatis XML 标签(select/if/where/foreach)