SpringBoot的知识点介绍和优缺点介绍

什么是SpringBoot?

SpringBoot是Spring社区发布的一个开源项目,在帮助开发者快速并且更简单的构建项目。它使用习惯优于配置的理念让你的项目快速运行起来,使用Spring Boot很容易创建一个独立运行(运行jar,内置Servlet容器,Tomcat、jetty)、准生产级别的基于Spring框架的项目,使用SpringBoot框架,你可以不用或者只需要很少的配置文件。

SpringBoot核心功能

独立运行Spring项目
       Spring boot 可以以jar包形式独立运行,运行一个Spring Boot项目只需要通过java -jar xx.jar来运行。
内嵌servlet容器
       Spring Boot可以选择内嵌Tomcat、jetty或者Undertow,这样我们无须以war包形式部署项目。
提供starter简化Maven配置
       spring提供了一系列的start pom来简化Maven的依赖加载
自动装配Spring
       SpringBoot会根据在类路径中的jar包,类、为jar包里面的类自动配置Bean,这样会极大地减少我们要使用的配置。当然,           SpringBoot只考虑大多数的开发场景,并不是所有的场景,若在实际开发中我们需要配置Bean,而SpringBoot没有提供支           持,则可以自定义自动配置。
准生产的应用监控
       SpringBoot提供基于http ssh telnet对运行时的项目进行监控。
无代码生产和xml配置
       SpringBoot不是借助与代码生成来实现的,而是通过条件注解来实现的,这是Spring4.x提供的新特性。

SpringBoot框架与SpringWeb框架搭建区别

其实就是简单、快速、方便!平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?

1)配置web.xml,加载spring和SpringMVC。

2)配置数据库连接、配置Spring事务。

3)配置加载配置文件的读取,开启注解。

4)配置日志文件。

....等等

配置完成之后部署Tomcat调试。

如果使用SpringBoot呢?

很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套web项目或者是构建一个微服务!

SpringBoot的优点

1. 约定优于配置思想

2. 专注与业务逻辑之间思维切换

3. 基于Spring的开发提供更快入门体验

4. 开箱即用,没有代码生成,无需XML配置。

5. 支持修改默认配置满足特定需求

6. 提供大型项目中常见的非功能性特性,如嵌入Tomcat服务器、安全、指标、健康检测、外部配置等

SpringBoot的缺点

1、缺少服务注册发现等外围方案;

2、缺少外围监控集成方案;

3、缺少外围安全管理方案;

4、缺少rest落地的URI规划方案。。。

5、将原有的spring项目转成springboot项目,很困难,更适合新建的项目。

6、集成度很高,对于了解底层不容易。

SpringBoot的知识点介绍和优缺点介绍_第1张图片

SpringBoot几个常用的注解

(1)@RestController和@Controller指定一个类,作为控制器的注解 ,并说明其区别
(2)@RequestMapping方法级别的映射注解,这一个用过Spring MVC的小伙伴相信都很熟悉 
(3)@EnableAutoConfiguration和@SpringBootApplication是类级别的注解,根据maven依赖的jar来自动猜测完成正确的spring的对应配置,只要引入了spring-boot-starter-web的依赖,默认会自动配置Spring MVC和tomcat容器
(4)@Configuration类级别的注解,一般这个注解,我们用来标识main方法所在的类,完成元数据bean的初始化。
(5)@ComponentScan类级别的注解,自动扫描加载所有的Spring组件包括Bean注入,一般用在main方法所在的类上 
(6)@ImportResource类级别注解,当我们必须使用一个xml的配置时,使用@ImportResource和@Configuration来标识这个文件资源的类。 
(7)@Autowired注解,一般结合@ComponentScan注解,来自动注入一个Service或Dao级别的Bean
(8)@Component类级别注解,用来标识一个组件,比如我自定了一个filter,则需要此注解标识之后,Spring Boot才会正确识别。
SpringBoot是如何管理事务的?

直接写@transactional注解就行,在方法就是方法事务,类上就是类事务

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(SpringBoot的知识点介绍和优缺点介绍)