SpringBoot入门
文章目录
- SpringBoot入门
- 一、SpringBoot是什么?
- 二、Spring的缺点
- 1.配置繁琐
- 2.依赖繁琐
- 三、SpringBoot功能
- 四、SpringBoot起步依赖原理
- 五、SpringBoot快速入门
- 总结
一、SpringBoot是什么?
SpringBoot是由Pivotal团队提供的全新框架,它提供了一种快速使用Spring的方式,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入到逻辑业务的代码编写中,从而大大提高了开发的效率。
官网:https://spring.io/projects/spring-boot
二、Spring的缺点
Spring相比较SpringBoot,有如下缺点
1.配置繁琐
搭建ssm项目,需要配置大量xml以及大量的bean
如:application.xml spring-mybatis.xml spring-mvc.xml
。
2.依赖繁琐
pom.xml要写大量依赖,例如
spring-core
spring-bean
spring-mvc
spring-mybatis
java-connector
等等
三、SpringBoot功能
a、 自动配置
SpringBoot的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring配置应该用哪个,不该用哪个。该过程是SpringBoot自动完成的。
b、起步依赖
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其他库的传递依赖,这些东西加在一起即支持某项功能。 依赖太多版本冲突。 简单的说,起步依赖就是将具备某种功能的坐标打包到一起,并提供一些默认的功能。
c、辅助功能
提供了一些大型项目中常见的非功能性特性,如嵌入式服务器(tomcat)、安全、指标,健康检测、外部配置等。
四、SpringBoot起步依赖原理
• 在spring-boot-starter-parent中定义了各种技术的版本信息,组合了一套最优搭配的技术版本。
• 在各种starter中,定义了完成该功能需要的坐标合集,其中大部分版本信息来自于父工程。
• 我们的工程继承parent,引入starter后,通过依赖传递,就可以简单方便获得需要的jar包,并且不会存在版本冲突等问题。
五、SpringBoot快速入门
官网: https://docs.spring.io/spring-boot/docs/current/reference/html
搭建一个SpringBoot工程,定义HelloController.hello()方法,返回”Hello SpringBoot!”
如何创建一个springboot工程,见创建springboot项目
1、在pom.xml,添加如下依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.0.0</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2、编写springboot主启动类
@SpringBootApplication
public class SpringbootInitApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootInitApplication.class, args);
}
}
3、编写test类
@RestController
@RequestMapping("/hello")
public class HelloController{
@GetMapping("/test")
public String test(){
return"Hello SpringBoot!";
}
}
4、启动编写主启动类SpringbootInitApplication ,访问: http://localhost:8080/hello/test
总结
• SpringBoot在创建项目时,使用jar、war的打包方式。
• SpringBoot的引导类,是项目入口,运行main方法就可以启动项目。
• 使用SpringBoot和Spring构建的项目,业务代码编写方式完全一样。