Springboot学习总结
⼀、Springboot简介
Springboot的由来
SpringBoot是伴随着Spring4.0诞⽣的,尽管Spring的组件代码是轻量级的,但它的配置却是重量级的,编写配置挤占了编写应⽤程序逻辑的时间。此外,项⽬的依赖管理也是⼀件耗时耗⼒的事情。
针对以上痛点,SpringBoot基于约定优于配置的思想,可以让开发⼈员不必在配置与逻辑业务之间进⾏思维的切换,全⾝⼼的投⼊到逻辑业务的代码编写中,从⽽⼤⼤提⾼了开发的效率。
Springboot解决的问题
1、使编码变得简单
2、使配置变得简单
3、使部署变得简单
spring mvc和boot区别4、使监控变得简单
Springboot特性:
为基于Spring的开发提供更快的⼊门体验
基于注解的零配置思想,开箱即⽤,没有代码⽣成,也⽆需XML配置。同时也可以修改默认值来满⾜特定的需求
提供了⼀些⼤型项⽬中常见的⾮功能性特性,如嵌⼊式服务器、安全、指标,健康检测、外部配置等
SpringBoot不是对Spring功能上的增强,⽽是提供了⼀种快速使⽤Spring的⽅式,和各种流⾏框架,spring web
mvc,mybatis,spring cloud⽆缝整合
内嵌tomcat和jetty容器,不需要单独安装容器,jar包直接发布⼀个web应⽤
Springboot优缺点
优点
1. 快速构建项⽬。
2. 对主流开发框架的⽆配置集成。
3. 项⽬可独⽴运⾏,⽆须外部依赖Servlet容器。-提供运⾏时的应⽤监控。
4. 极⼤的提⾼了开发、部署效率。
5. 与云计算的天然集成。
缺点
1. ⾼度集成,使⽤的时候不知道底层实现
2. 由于不了解底层,导致项⽬出了问题会很难排查
⼆、Springboot核⼼功能
1、独⽴运⾏Spring项⽬
Spring boot 可以以jar包形式独⽴运⾏,运⾏⼀个Spring Boot项⽬只需要通过java -jar xx.jar来运⾏。
2、内嵌servlet容器
Spring Boot可以选择内嵌Tomcat、jetty或者Undertow,这样我们⽆须以war包形式部署项⽬。
3、提供starter简化Maven配置
spring提供了⼀系列的start pom来简化Maven的依赖加载,例如,当你使⽤了spring-boot-starter-web,会⾃动加⼊如图5-1所⽰的依赖包。
4、⾃动装配Spring
SpringBoot会根据在类路径中的jar包,类、为jar包⾥⾯的类⾃动配置Bean,这样会极⼤地减少我们要使⽤的配置。当然,SpringBoot只考虑⼤多数的开发场景,并不是所有的场景,若在实际开发中我们需要配置Bean,⽽SpringBoot灭有提供⽀持,则可以⾃定义⾃动配置。
5、准⽣产的应⽤监控
SpringBoot提供基于http ssh telnet对运⾏时的项⽬进⾏监控。
6、⽆代码⽣产和xml配置
SpringBoot不是借助与代码⽣成来实现的,⽽是通过条件注解来实现的,这是Spring4.x提供的新特性。
三、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才会正确识别。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。