开发者学堂课程【Java Spring Boot 2.6.0开发实战-1024程序员节创造营公益课:搭建3层架构实战 MySQL(一)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/903/detail/14340
搭建3层架构实战 MySQL(一)
目录:
一、三层架构(前后段分离示意图)
二、使用 Spring Data 简化 MySQL 数据访问
三、Spring Data 数据框架
四、SpringBoot2.6实战 MySQL 数据库
五、 实操代码展示
前言:
前后端分离主要考虑的是业务规模,业务规模主要包括复杂度,高并发等等。
一、三层架构(前后段分离示意图)
三层架构介绍:
架构就和我们平常穿衣服样,适合自己的才是最好的,图中的业务逻辑层有些许瑕疵,这跟英文翻译有点关系;严格来讲的话,接口层,业务逻辑层,数据访问层,每一层都有自己的职责,这与计算机编码规范相关。
学员们可以提前装好 mysql,MongoDB 等软件;当今,我们做 JAVA 开发 spring 为我们提供了 springdata 来优化开发流程。
如:体现在用户登录的增删改查,评论的增删改查等等;便于我们与数据库进行数据交互。
二,使用 Spring Data 简化 MySQL 数据访问
Spring Data 新特性
1.快速数据访问框架,提供统一的编程模型
2.强大的 repository 仓储和自定义对象映射 ORM 抽象
3.从 repository 方法名称派生动态查询接口
4.实现 Domain 域基类提供基本属性
5.支持透明审计日志(创建,最后更改)
6.可以自定义 repository 代码
7.通过 JavaConfig 和自定义 XML 命名空间轻松实现
Spring 集成
8.与 Spring MVC 控制器的高级集成
9.跨库持久性的实验支持
Spring Data 架构示意图;
Spring Data 核心模块:
1. Spring Data Commons -支持每个 Spring Data 模块的 Core Spring 概念。
2. Spring Data JDBC -对 JDBC 的 Spring Data 存储库支持。
3. Spring Data JDBC Ext -支持标准 JDBC 的数据库特定扩展,包括对 Oracle RAC快速连
接故障转移的支持,AQJMS 支持以及对使用高级数据类型的支持
4. Spring Data JPA - JPA 的 Spring Data 存储库支持。
5. Spring Data KeyValue -基于映射的存储库和 SPI,可轻松构建用于键值存储的Spring
Data 模块。
6. Spring Data LDAP -对 Spring LDA P 的 Spring Data 存储库支持
7. Spring Data MongoDB-基于 Spring 的对象文档支持和 MongoDB 的存储库。
8. Spring Data Redis - 从 Spring 应用程序轻松配置和访问 Redis。
9. Spring Data REST-将 Spring Data 存 储库导出为超媒体驱动的 RESTful 资源。
10.Spring Data Apache Cassandra-轻松配置和访问 Apache Cassandra 或大规模,高可用性
11.Spring Data Apache Geode -轻松配置和访问 Apache Geode,
12.Spring Data Apache Solr-为面向搜索的 Spring 应用程序轻松配置和访问 Apache Solr。
13.Spring Data Pivotal GemFire-轻松配置和访问 Pivotal GemFire
MySQL 数据库设计表:
三,Spring Data(2.6)实战 MySQL
1.Spring JDBC and JdbcTem plate
2. Spring Data JPA and Hibernate framework
3.Spring Data 简化连接不同的数据库
4.使用 Spring Data JPA 框架连接 MySQL
5.当然也可以使用原始的 JDBC
6.默认底层使用 Hibernate 框架
7.支持 Repository 仓储模式
8.引入最重要的2个包
9. spring-boot-starter-data-jpa
10. mysql-connector-java
注意:第十个依赖(mysql-connector-java)非常的重要
四,Spring Data JPA 框架
Spring Data JPA 简化数据访问层的开发工作
基 于 Spring 和 JPA 构建存储库的完美支持
支持 Querydsl 谓词,从而支持类型安全的JPA查询.Domain 类的透明审核
分页支持,动态查询执行,集成自定义数据访问代码的能力
在引导时验证 @Query 带注释的查询
支持基于 XML 的实体映射
引入 @EnableJpaRepositories,基于 JavaConfig 的存储库配置。