Spring的缺点
组件代码是轻量级,配置缺过于繁琐
解决方案
使用SpringBoot,约定优于配置
SpringBoot的特点
1.入门快
2.无代码生成,无需xml,可修改默认值满足特定需求
3.提供了常见的非功能特性,嵌入式服务器,安全,指标,健康检测,外部配置
4.提供了一种快速使用spring的方式
核心功能
1.起步依赖
2.自动配置
快速入门
SpringBoot起步依赖,spring-boot-starter-parent
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
集成SpringMVC进行Controller开发,导入web依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
创建一个新的项目
点击new–>选择Project–>选择Spring Initializr–>点击next–>修改项目名称后点击next–>选择web,勾选spring web后,点击next–>点击finish–>成功创建一个新的springboot项目
hello world
项目创建完成后,demo中有一个已经写好的启动类,点击运行,不会自动跳转到8080页面,在网址栏中输入8080端口后跳转至8080页面,页面上显示报错,这是因为没有配置@Controller,代码如下:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@SpringBootApplication
public class FristApplication {
@RequestMapping("/")
@ResponseBody
String hello() {
return "hello world SpringBoot";
}
public static void main(String[] args) {
SpringApplication.run(FristApplication.class, args);
}
}
点击运行后,8080页面显示hello world SpringBoot。
第一个项目完成。
注解
@Configuration: 用于定义一个配置类
@EnableAutoConfiguration :Spring Boot 会自动根据你jar 包的依赖来自动配置项目。
@ComponentScan: 告诉Spring 哪个packages 的用注解标识的类会被spring自动扫描并且装入bean 容器。