1.1.Spring 传统项目整合弊病
在传统的spring应用项目中:
1)配置相对复杂(例如大量xml)
2)依赖冲突严重(maven依赖版本不同)
3)扩展相对复杂
1.2.Spring 家族主要成员构成
Spring诞生于2002年,成型于2003,目前已经发展到了Spring5.x版本,支持JDK-11及JavaEE8。现在的spring已经不仅仅是framework,还扩展了spring boot,spring cloud等。
1.3.Spring 应用中的技术趋势
Spring 自5.x以后:
1)只能向下兼容到JDK8.
2)WebFlux异步编程技术突起,但全面落地还需要一些时日。
3)Spring boot,Spring cloud 异军突起。
说明:学技术一定要了解技术发展史,并对技术的发展有一定的前瞻性。
2.Spring Boot 简介
现在软件市场已经形成一定的规模,系统从单体架构,分布式架构,再到微服务架构,其整个架构体系正在发生很大变化,企业现在更注重技术的开箱即用,更注重技术在生态圈中的深度融合,更注重轻量级的运维。由此spring boot诞生。
Spring boot构建于Spring 框架基础之上,基于快速构建理念,提供了自动配置功能,可实现其开箱即用特性,可以简化整个项目的配置。其核心主要包括如下几个方面:
1)自动配置(Auto Configuration)
2)起步依赖(Starter Dependency)
3)健康检查(Actator)
4)…
说明:Spring Boot地址:https://spring.io/projects/spring-boot
2.2.Spring boot入门案例
2.2.1.初始环境配置
1.下载JDK1.8,并进行环境变量配置
2.下载maven(apache-maven-3.6.1),并进行相关配置(本地库,私服)。
3.下载sts最新版(sts-4.2.2.RELEASE),并进行maven配置.
2.2.2.项目创建及结构分析
打开STS 集成开发工具,并基于如下步骤实现项目创建。
Step01:打开项目新建窗口(快捷键 ctrl+n), 搜索spring,选择spring starter 项目。
Step03 选择Spring Boot版本。
2.2.3.项目业务基本实现及测试
业务描述:创建一个cache类然后交给spring 管理。
package com.cy.pj.common.cache;
@Component
@Scope("singleton")
public class DefaultCache {
public Cache() {
System.out.println("cache()");
}
@PostConstruct
public void init() {
System.out.println("init()");
}
@PreDestroy
public void destory() {
System.out.println("destory");
}
}
修改sringboot 测试类,进行bean的获取及测试。
@RunWith(SpringRunner.class