SpringBoot介绍

2022-10-27 16:07:35 浏览数 (1)

SpringBoot介绍

代码语言:javascript复制
了解SpringBoot之前我们先来聊聊SpringFramework,我们都知道Spring是重量级企业开发框架
Enterprise JavaBean的替代品,SpringFramework为企业级java开发提供了相对简单的方法,依赖
注入,以及面向切面编程,用简单的java对象(pojo)替代EJB。
虽然Spring的组件代码是轻量级的,但是它的配置确是重量级的,虽然Spring2.5之后提供了注解
开发,但是当引入一切Spring的新特性的时候还是需要进行一些XML的配置,例如SprinMVC的前端控制器
以及视图解析器,以及一些包扫描的基本配置,当需要整合第三方框架的时候XML配置写起来跟是让开发者
头疼的一件事。不过不要担心,SpringBoot来了,他让以上的一切成为了过去式。

再来聊聊SpringBoot 简而言之SpringBoot就是简化之后的Spring 以约定大于配置的形式完成了之前Spring的一些习惯的配置。

SpringBoot的优点以及特性

代码语言:javascript复制
a.快速创建独立的Spring项目以及主流框架的集成
b.内嵌服务器,不需要外部服务器即可向普通的java程序一样直接启动
c.大量的自动配置,简化开发,也可修改默认值。
d.SpringBoot基于pom文件的继承以及传递依赖,简化的pom文件的配置。

SpringBoot的特殊注解

代码语言:javascript复制
@SpringBootApplication
这是SpringBoot的核心注解也是一个由@SpringBootConfiguration
@EnableAutoConfiguration和@ComponentScan组合的复合注解
来讲解一下SpringBoot的启动流程分析这三个注解的作用
SpringApplication.run(当前类名.class, args);执行main函数
执行SpringApplication的run方法,反射识别@SpringBootApplication注解
@ComponentScan类似于XML配置文件中的包扫描,将当前类所在的包以及子孙包
下带有@Component @Controller @Service以及@Repository的类交由Spring的IOC
容器管理或者加入到SpringMVC的前端控制器的扫描范围。
@SpringBootConfiguration会自动读取SpringBoot的配置文件:
application.yml,application.propertites
@EnableAutoConfiguration会去加载jar包中的config相关jar
(spring-bootautoconfigure-1.5.9.RELEASE),解析其中的
META-INF/spring.factories配置文件,根据其中的信息自动进行相应配置。

SpringBoot中其他常用的注解

代码语言:javascript复制
@RestController
等价于SpringMVC中的@Controller   @ResponseBody

@Configuration
作用于在@SpringBootApplication扫描范围内的其他自定义
配置类 有这个注解的类其效果等价于Spring中的配置文件
applicationContext.xml,在其中可以进行其他的自定义配置。

@ComponentScan
value属性可以指定要被扫描的包,如果不指定则将该配置类所在的包
及其子包加入包扫描,其作用等价于Spring中<Context:Component-scan base-package=""/>

@Bean
可以加在能被@SpringBoot作用的范围下的任意方法,将其返回类型注册为Spring中管理的bean

@Value
此注解和Spring中用于依赖注入的@Value作用大体一样,不过使用${}引用的值SpringBoot直接
以键值对的形式写在SpringBoot的配置文件中。

@ImportResource
告知SpringBoot额外读取指定的配置文件。

入门案例请移步SpringBoot快速启动

0 人点赞