SpringBoot初学
1 SpringBoot核心特性
Spring boot是一个脚手架(而非框架),构建于Spring框架(Framework)基础之上,基于快速构建理念,提供了自动配置功能,可实现其开箱即用特性(创建完一个基本的项目以后,可零配置或者少量配置即可运行我们的项目),其核心主要有如下几个方面:
起步依赖(Starter Dependency)。
自动配置(Auto Configuration)。
健康检查(Actator)-监控。
其中,Spring Boot官方地址为https://spring.io/projects/spring-boot。
2. 环境配置
2.1配置JDK
2.2下载STS
2.3 配置maven (在maven的setting.xml文件中)
2.3.1 配置maven本地库(从maven远程服务器下载的资源存储到的位置)
**<localRepository>${user.home}/.m3/repository</localRepository>**
2.3.2 配置maven私服(配置到mirrors标签内部)
<mirror>
<id>aliyun</id>
<name>aliyun for maven</name>
<mirrorOf>*</mirrorOf>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
2.3.3 配置maven中的profile(配置到profiles标签内部),设置JDK编译和运行版本
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8
</maven.compiler.compilerVersion>
</properties>
</profile>
2.4 STS整合maven配置以及一些基本优化
1):Maven Installations配置
2): maven user setting设置
3): 工作区编码设置 workspace
4): 拼写检查禁用spelling
5): 取消如图连接设置 HyperLinking
6):关闭校验功能 Validation
7): 修改STS工具内存配置,打开SpringToolSuite4.ini文件,修改堆大小,根据自身电脑内存大小量力而行.
3.SpringBoot简单入门
3.1 创建项目 spring starter project
3.2 启动项目
3.3 分析
1):启动时会寻找入口(@SpringBootApplication注解),进行自动配置并扫描指定包以及子包下的类的加载
2): 如果有spring相关的注解(如@Component,@Service等),则会交由spring管理
3):spring会交给beanfactory工厂,此工厂对象会根据反射创建bean实例.
4.依赖注入(DI)
图中描述了DefaultCacheTests类与DefaultCache类的关系,这两个类通过指定注解(@SpringBootTest,@Component)进行了描述,其意图是告诉spring框架这个两个类的实例的创建由Spring负责,并且由Spring框架基于@Autowired注解的描述完成DefaultCacheTests实例中有关DefaultCache类型的值的注入(DI)。
@SpringBootTest 注解用于告诉spring框架,此测试类交给spring管理。
@Autowired注解描述属性时,用于告诉spring框架要为此属性注入一个值
5.FAQ
5.1 如何把一个类交给spring管理?
a):将类放在启动类包及其子包下
b): 再通过spring指定注解(如@Component,@Service)
5.2 如何跟踪这个类是否被加载?
JVM参数设置进行跟踪: -XX: +TraceClassLoading
(右键run-run configuration-Arguments)