【课程背景】
微服务架构已然成为了当下最流行的热门话题,并且它已被各种规模的互联网公司广泛接受和认可,而Spring Boot以其极速开发为特点也已成为互联网开发人员必备技术。无论是互联网、云计算还是大数据,Java平台已成为全栈的生态体系,其重要性几乎不可替代。而Spring Boot作为微服务的基础设施之一,背靠强大的Spring 生态社区,支撑Spring Cloud技术体系。
本课程将讲解SpringBoot是如何简化Spring的开发过程,能让开发者快速的搭建框架和Web容器,熟练使用SpringBoot下各种注解与组件,如何与SpringCloud技术体系集成。内容涵盖SpringBoot的整体框架结构、多环境配置处理、如何快速开发基于Web的应用、对数据访问的支持、对缓存的支持、日志管理、应用监控管理等。
【课程收益】
Ø 掌握SpringBoot框架快速应用与实战
Ø 掌握SpringBoot框架与第三方技术的集成
Ø 掌握SpringBoot生产特性
Ø 掌握SpringBoot底层原理
【课程对象】研发工程师、售前技术工程师
【课程时间】1天
【课程大纲】
一、微服务与SpringBoot
1、微服务基础
Ø 微服务基本介绍
Ø 介绍微服务基本概念、技术发展的由来,以及目前流行的技术(主要针对Java 平台),Spring Boot、Spring Cloud等
2、SpringBoot初体验
Ø Spring Boot 介绍:
Ø 介绍 Spring Boot 项目、选型理由、功能特性、参考文档等
Ø Spring Boot 初体验:
Ø Spring Boot 预备环境、新建 Spring Boot 应用、代码组织结构、运行
二、SpringBoot快速应用实战
1、SpringBoot概述
Ø 什么是Spring Boot
Ø Spring Boot的核心功能
Ø Spring Boot的优缺点对比
Ø Spring Boot的版本
2、SpringBoot快速入门
Ø 创建Maven工程
Ø 添加SpringBoot的启动器
Ø 编写SpringBoot引导类
Ø 编写Controller
Ø 测试验证
实战:使用SpringBoot完成第一个SpringBoot工程
3、SpringBoot核心配置
Ø 启动类与@SpringBootApplication
Ø 自动配置的开闭
Ø SpringBoot配置文件类型和作用
Ø Yml配置文件简介
Ø Yml配置文件的语法
Ø Spring Boot的配置文件
Ø Spring Boot之starter pom
Ø 使用命令行参数实现外部配置
Ø 常规属性的配置
Ø 多环境配置之Profile配置
Ø SpringBoot配置信息查询
Ø 使用注解@Value映射配置
Ø 使用注解@ConfigurationProperties配置映射
实战:使用SpringBoot基于多环境的快速切换
4、SpringBoot之Web开发
Ø Spring Boot的Web开发支持
Ø Spring Boot与Spring MVC的集成
Ø 基于tomcat的配置
三、SpringBoot与第三方技术整合
1、SpringBoot整合MyBatis
Ø 添加Mybatis的启动器
Ø 创建实体Bean
Ø 编写Mapper
Ø 配置Mapper映射文件
Ø 在application.properties中添加mybatis信息
Ø 编写测试Controller
实战:SpringBoot对Mybatis的整合
2、SpringBoot整合JPA
Ø JPA:
Ø 介绍 JPA 技术背景、标准规范、JPA实现框架以及核心API
Ø Spring Data JPA 整合:
Ø 以 JPA 实现框架 Hibernate为例,实战整合 Spring Data JPA 技术
Ø Spring Boot 整合:
Ø 介绍和整合 spring-boot-stater-data-jpa:
实战:SpringBoot对Spring Data JPA的整合
3、SpringBoot整合Redis
Ø Redis安装
Ø Redis基本使用
Ø Redis应用场景
Ø 基于Redis实现热数据的读写
Ø 高并发场景下基于Redis实现分布式锁
实战:基于Redis实现热数据的读写
实战:高并发场景下基于Redis实现分布式锁
4、SpringBoot整合Junit
Ø 添加Junit启动器
Ø 编写测试类
Ø 控制台验证测试信息输出
5、SpringBoot整合NoSQL
Ø NoSQL:
Ø 介绍 NoSQL 使用背景、技术发展以及主流中间节
Ø 以 Elasticsearch 为例,搭建 Elasticsearch ,整合 Spring Data 技术(如:ElasticsearchTemplate)
Ø Spring Boot 整合:
Ø 介绍和整合 spring-boot-starter-data-elaticsearch
Ø Spring mongodb的支持
Ø Spring Boot对Mongodb的支持
Ø Spring Boot下基于Mongodb整合
实战:SpringBoot对ElasticSearch的整合
实战:SpringBoot对MongoDB的整合
四、SpringBoot原理剖析
1、SpringBoot底层原理剖析
Ø @EnableAutoConfiguration原理分析
Ø @Enable注解实现原理
Ø @Import的使用
Ø ImportSelector接口
Ø 如何实现自定义注解
2、SpringBoot实现自定义Starter
Ø 自定义Starter过程剖析
Ø 自定义Starter实现
Ø 自定义Starter整合
实战:SpringBoot自定义starter的开发与整合