Springboot 也就是为了解决spring的缺点诞生的顶级框架,那么spring 有哪些缺点呢?
springboot 的优点
Springboot 并不是对Spring做了功能增强,这是更快速的使用Spring而已
搭建一个简单的Springboot案例
首先idea 里面创建一个maven 工程
- <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.0modelVersion>
-
- <groupId>org.examplegroupId>
- <artifactId>SpringBootStudyartifactId>
- <version>1.0-SNAPSHOTversion>
-
- <properties>
- <maven.compiler.source>8maven.compiler.source>
- <maven.compiler.target>8maven.compiler.target>
- properties>
- <parent>
- <groupId>org.springframework.bootgroupId>
- <version>2.1.8.RELEASEversion>
- <artifactId>spring-boot-starter-parentartifactId>
- parent>
- <dependencies>
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-starter-webartifactId>
- dependency>
- dependencies>
- project>
这个大家再熟悉不过了
- package com.zx;
-
- import org.springframework.boot.SpringApplication;
- import org.springframework.boot.autoconfigure.SpringBootApplication;
-
- /**
- * springboot的入口,同学们工作的时候可以看一看你们自己公司项目的入口
- */
- @SpringBootApplication//固定注解后面也会详细讲解这个作用
- public class Application {
- //Springboot启动项目的入口,这个args的作用后面也会详细讲解
- public static void main(String[] args) {
- SpringApplication.run(Application.class, args);
- }
- }
- package com.zx.Ctl;
-
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
-
- @RestController
- public class HelloCtl {
- @RequestMapping("/hello")
- public String hello(){
- return "你好!";
- }
- }
以上就搭建了一个小型的项目!但是为什么这么简单呢,后面会一一解答
用idea 快速构建一个web 项目

非常的简便,当然spring官网也可以进行组装成一个压缩包,然后我们可以使用。


4.2 spring-boot-starter-web 
SpringBoot 是基于约定的,很多配置都有默认值,但是有个默认的配置文件application.proterties
或者application.yml又或者是application.yaml进行配置 ,具体加载顺序看下图


yml 的语法特性
这边就直接贴图,看一下就了然

这个还是很常见的方法取值


这个注解的意思就是将配置文件里面的值映射到这个对象里面,注意这个类里面必须要有geter、sertter,才可以正确的注入
- package com.zx.Config;
-
- import org.springframework.boot.context.properties.ConfigurationProperties;
- import org.springframework.stereotype.Component;
-
- import java.util.Arrays;
-
- @Component
- @ConfigurationProperties//这边默认就是拿配置文件里的值
- //这边带值的意思就是在配置文件有对象的时候就可以只映射对象的值,而不是整个配置文件
- //@ConfigurationProperties(prefix = "server")
- public class HelloConfig {
-
- private String msg1;
-
- private String[] name;
-
- public String getMsg1() {
- return msg1;
- }
-
- public void setMsg1(String msg1) {
- this.msg1 = msg1;
- }
-
- public String[] getName() {
- return name;
- }
-
- public void setName(String[] name) {
- this.name = name;
- }
-
- @Override
- public String toString() {
- return "HelloConfig{" +
- "msg1='" + msg1 + '\'' +
- ", name=" + Arrays.toString(name) +
- '}';
- }
- }
只要加上这个依赖就可以去除上面红色的报错
- <dependency>
- <groupId>org.springframework.bootgroupId>
- <artifactId>spring-boot-configuration-processorartifactId>
- <optional>trueoptional>
- dependency>
加上了这个,再写配置文件的时候就会有提示.,就是根据你配置文件里面需要的值的时候就很方便。