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配置

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_java


2): maven user setting设置

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_spring_02

3): 工作区编码设置 workspace

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_java_03


4): 拼写检查禁用spelling

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_spring框架_04


5): 取消如图连接设置 HyperLinking

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_spring框架_05

6):关闭校验功能 Validation

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_java_06

7): 修改STS工具内存配置,打开SpringToolSuite4.ini文件,修改堆大小,根据自身电脑内存大小量力而行.

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_spring框架_07

3.SpringBoot简单入门

3.1 创建项目 spring starter project

3.2 启动项目

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_spring框架_08


3.3 分析

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_maven_09


1):启动时会寻找入口(@SpringBootApplication注解),进行自动配置并扫描指定包以及子包下的类的加载

2): 如果有spring相关的注解(如@Component,@Service等),则会交由spring管理

3):spring会交给beanfactory工厂,此工厂对象会根据反射创建bean实例.

4.依赖注入(DI)

springboot s3文件协议服务器详细的配置类 及代码实现 springboot w3c_maven_10


图中描述了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)