--- title: Java持久层与Maven工程化 tags: - module - java - persistence - maven - joplin type: module source_type: reconstructed created: 2026-04-22 updated: 2026-04-23 --- # Java持久层与Maven工程化 > [!abstract] > 这一模块处理 Java 工程开发里非常关键的两条线:一条是程序如何访问数据库,另一条是项目如何被统一构建与管理。 ## 模块结论 - MySQL 基础、SQL 操作与表结构设计,是理解 [[MyBatis]] 之前必须先抓住的数据层前提。 - [[MyBatis]] 是 Java 持久层中的主流框架之一,核心作用是简化数据库访问与结果映射。 - [[Maven]] 负责依赖管理、统一项目结构和构建流程。 - `application.yml`、`mapper.xml`、`logback.xml` 这类常见配置文件,是工程化能力真正落地到项目结构中的接口层。 - 工程化与部署会继续延伸到独立主题 [[前端与工程化]],这里保留与 Java 项目构建直接相关的主线。 ## 一、数据库基础为什么要先补上 - JavaWeb 中的数据库笔记不是数据库主题的重复,而是面向业务开发的 SQL 实操入口。 - 表设计、增删改查、多表操作会直接影响 MyBatis 映射与接口设计。 ## 二、MyBatis 在解决什么问题 - JDBC 原始开发样板代码多。 - SQL、连接、参数绑定、结果封装重复度高。 - MyBatis 用映射和配置把这些重复工作统一起来。 ## 三、MyBatis 基础思路 - 定义实体类对应表记录。 - 编写 Mapper 接口。 - 配置 SQL 或映射规则。 - 执行查询后把结果映射成对象。 ### 复习重点 - 它是持久层框架,不是业务层框架。 - SQL 仍然重要,MyBatis 不是“不要 SQL”。 ## 四、Maven 的核心作用 - 依赖管理 - 统一项目结构 - 标准化构建流程 ## 五、Maven 高级能力 - 分模块设计 - 继承与聚合 - 私服与仓库管理 ### 为什么工程化重要 - 项目大了以后,仅靠手工拷 jar 和单模块管理会很快失控。 - 工程化工具的核心不是“更高级”,而是降低协作成本。 ## 六、常用配置文件为什么关键 - `application.yml` 通常承载应用配置、环境参数、端口、数据源等核心设置。 - `mapper.xml` 对应 MyBatis 的 SQL 映射定义,是持久层配置的一部分。 - `logback.xml` 负责日志输出规则,直接影响调试与运维可观测性。 ## 七、关联主题 - [[前端与工程化]]:承接 Maven 工程化延伸、Nginx、Linux、Docker 与交付环境等更完整的部署主题。 ## 八、易错点 - 把 MySQL 三篇实操笔记排除在 Java 主题之外,会让持久层链路从 SQL 到映射的理解断掉。 - MyBatis 简化的是 JDBC 开发,不是替代数据库设计和 SQL 思考。 - Maven 不只是下载依赖,它也是构建和项目组织工具。 - 分模块的目的是职责拆分和复用,不是为了把项目切得越碎越好。 - 配置文件不是“复制模板就行”的杂务,它们直接决定程序如何连接数据库、输出日志和加载运行参数。 - 部署链路已经单独成主题,不必继续把 Linux、Docker 细节压在 Java 持久层模块中。 ## 九、复习提问 - 为什么 MyBatis 学习不能脱离 SQL 和表结构理解? - MyBatis 相比直接 JDBC,简化了哪些环节? - Maven 的三大核心作用分别是什么? - 为什么大型 Java 项目通常需要分模块? - `application.yml`、`mapper.xml`、`logback.xml` 分别解决什么工程问题? ## 来源 - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/4.Maven.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/7.数据库-MySQL-01.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/8.数据库-MySQL-02.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/9.数据库-MySQL-03.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/10.Mybatis入门.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/11.Mybatis进阶.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/JavaWeb/17.Maven高级.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/Java项目常用配置/application.yml.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/Java项目常用配置/logback.xml.md]] - [[raw/Joplin/编程学习项目/Java学习笔记/Java项目常用配置/mapper.xml.md]] ## 相关页面 - [[Java]] - [[Java核心API与集合]] - [[JavaWeb与SpringBoot]] - [[MyBatis]] - [[Maven]] - [[前端与工程化]]