day02--Web 后端基础(Java 操作数据库)
1) JDBC(底层基础)
-
JDBC 是 Java 操作关系型数据库的标准 API(接口规范),驱动由厂商实现
-
核心流程:获取连接 → 预编译 SQL → 绑定参数 → 执行 → 处理结果 → 关闭资源
-
查询(DQL):
executeQuery()→ResultSet(next()+getXxx取值) -
增删改(DML):
executeUpdate()→ 返回 影响行数 -
重点:PreparedStatement 预编译 SQL
- 用
?占位 +setXxx传参 - 优点:防 SQL 注入 + 性能更好(执行计划可复用)
- 用
2) MyBatis(简化 JDBC)
-
MyBatis 是 持久层(Dao)框架,用于简化 JDBC 开发
-
相比 JDBC 的改进:
- 数据库连接信息放在配置文件(不硬编码)
- 结果集映射/封装自动完成
- 使用 连接池(减少频繁创建/销毁连接)
-
开发核心两件事:
- 配置数据源(
application.properties / application.yml) - 写
Mapper接口 SQL(注解或 XML)
- 配置数据源(
3) MyBatis 常用点
-
@Mapper:Mapper 交给 Spring 管理(生成代理对象) -
CRUD 注解:
@Select / @Insert / @Update / @Delete -
参数占位:
#{}:走 预编译(推荐,安全)${}:字符串拼接(有注入风险,慎用)
-
多参数:可用
@Param指定参数名(更稳) -
可开 SQL 日志:方便看执行的 SQL
4) XML 映射(复杂 SQL 用)
-
简单 SQL 用注解,复杂 SQL 用 XML
-
XML 规范:
- 同包同名(XML 和 Mapper 接口一致)
namespace= 接口全限定名- SQL 的
id= 方法名,返回类型一致
-
一个方法要么注解要么 XML,不能同时配
5) 数据库连接池
- SpringBoot 默认连接池:Hikari
- 可切换:Druid(加依赖 + 配置数据源 type)
6) SpringBoot 配置文件(yml)
- 推荐
application.yml:层级清晰、适合大量配置 - yml 要点:缩进表示层级、冒号后空格、空格缩进不能用 Tab、# 注释