最近打算做一个springboot的合集。从浅入深解析Springboot的使用,也帮自己梳理一下。
-
Springboot特点
首先我们要先明白一点,Springboot并不是对spring功能上的增强,而是提供了一种快速使用spring的方法。
1、Springboot设计的目的是用来简化spring应用的初始搭建以及开发过程。
2、嵌入的tomcat,无需部署war文件 -
构建Springboot项目及启动器讲解
我使用的开发工具是eclipse,在这里我用maven来构建springboot项目。
1、使用maven构建springboot项目
下面我们来配置一下pom.xml文件。 -
设置jdk版本和编码格式
<!-- 设置编码格式及jdk版本 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
- 添加springboot启动器
<!-- 注入springboot启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
到这里一个最基本的springboot项目就建好了。
我这里贴一下pom.xml的代码(如果是初学者最好一步步来理解各个配置的作用,不要一股脑直接把代码贴上去)……
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!-- springboot基本环境 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.2.RELEASE</version>
</parent>
<groupId>com.pyy.springboot</groupId>
<artifactId>development</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 设置编码格式及jdk版本 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!-- 注入springboot启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
这里插一句所谓的 springBoot 启动器其实就是一些 jar 包的集合。SprigBoot 一共提供 44 启动器。
这里比较常见的有
-
spring-boot-starter-web
支持全栈式的 web 开发,包括了 tomcat 支持和 springMVC 等 jar。 -
spring-boot-starter-jdbc
支持 spring 以 jdbc 方式操作数据库的 jar 包的集合 -
spring-boot-starter-redis
支持 redis 键值存储的数据库操作
这些可以在有需要的时候再进行配置。
- 编写测试的controller
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/development")
public class DevelopmentTest {
@RequestMapping("/hello")
public String hello() {
return "hello";
}
}
- 编写springboot启动类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
/**
* @author ASUS
*@ComponentScan:会自动扫描指定包下的全部标有@Component的类,并注册成bean,
* 也包括@Component下的子注解@Service,@Repository,@Controller
*/
@SpringBootApplication
@ComponentScan(basePackages = {"com.pyy.springboot.web"})
public class Main {
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
}
- 运行结果