文章目录
①. Springboot 简介
①. 简化Spring应用开发的一个框架
②. 整个Spring技术栈的一个大整合
③. J2EE开发的一站式解决方案
②. Springboot 主要特性
- ①. Springboot Starter: 它将所有的依赖进行整合,并合并到一个依赖中,可以一次性添加到项目的maven构建中。
- ②. 使编码编的简单,Springboot采购JavaConfig的方式对Spring进行配置,并且提供大量的注解,极大的提高了工作效率。
- ③. 自动配置:SpringBoot的自动配置特性利用了Spring对条件化配置的支持,合理地推测应用所需的bean并自动化配置他们。
- ④. 使部署变得简单,SpringBoot内置了三种Servlet容器,Tomcat,Jetty,undertow.我们只需要一个Java的运行环境就可以跑SpringBoot的项目了,SpringBoot的项目可以打成一个jar包。
- ⑤. 现在流行微服务与分布式系统,springboot就是一个非常好的微服务开发框架,你可以使用它快速的搭建起一个系统。同时,你也可以使用spring cloud(Spring Cloud是一个基于Spring Boot实现的云应用开发工具)来搭建一个分布式的架构
③. maven配置
④. Hello World
- 引入依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
</parent>
<dependencies>
<!--引入web场景的依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
- 创建主程序类
@SpringBootApplication
public class App {
public btatic void main(String[] args) {
SpringApplication.run(App.class, args);
}
}
- 编写controller
@RestController
public class HelloWorld {
@RequestMapping("/hello")
public String hello() {
return "hello world";
}
}
- 打包插件
<!--maven打包插件-->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
打包插件使用
在对应目录下使用jar -jar jar包名 , 去运行程序。
⑤. Springboot 特点
- ⑤①. 依赖管理
Springboot依赖管理
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.0.RELEASE</version>
</parent>
它的父项目
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.0.RELEASE</version>
</parent>
在父项目中声明了开发中常见的依赖版本号,自动版本仲裁机制。
①. 引入依赖默认可以不写版本号
②. 引入非版本仲裁的jar包,要写版本号。
修改默认版本号:
# 比如mysql修改版本号
<properties>
<mysql.version>5.1.43</mysql.version>
</properties>
# 只需要在当前项目里重写配置即可
⑥. 开发小技巧
Lombok
①. 引入依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
</dependency>
②. 下载对应插件
③. 简化JavaBean开发
④. 简化日志开发
@Slf4j
@RestController
public class HelloController {
@RequestMapping("/hello")
public String handle(@RequestParam("name") String name){
log.info("请求进来了....");
return "Hello, Spring Boot 2!" + "你好:" + name;
}
}
dev-tools
<!--热部署 ctrl+F9就会自动生效-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
项目或者页面修改以后:Ctrl+F9