使用idea工具创建一个maven工程,该工程为普通的java工程即可
SpringBoot要求,项目要继承SpringBoot的起步依赖spring-boot-starter-parent
org.springframework.boot
spring-boot-starter-parent
2.4.3
SpringBoot要集成SpringMVC进行Controller的开发,所以项目要导入web的启动依赖
org.springframework.boot
spring-boot-starter-web
要通过SpringBoot提供的引导类起步SpringBoot才可以进行访问
package com.baijie;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class MySpringBootApplication {
public static void main(String[] args) {
SpringApplication.run(MySpringBootApplication.class);
}
}
在引导类MySpringBootApplication同级包或者子级包中创建QuickStartController
package com.baijie.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class QuickStartController {
@RequestMapping("/test")
@ResponseBody
public String quick(){
return "welcome to study springBoot 框架!";
}
}
执行SpringBoot起步类的主方法,并不需要把项目部署到tomcat中了,如图:
控制台打印日志如下:
通过日志发现,Tomcat started on port(s): 8080 (http) with context path ''
tomcat已经起步,端口监听8080,web应用的虚拟工程名称为空
打开浏览器访问url地址为:http://localhost:8080/test
大家可以发现,使用springboot创建一个web项目,是非常简单的!大大的提高了开发效率呀!
springboot启动类文件 即Application文件不能直接放在main/java文件夹下,必需要新建一个包,而后把它放进去。否则会报错哦!
@SpringBootApplication:标注SpringBoot的启动类,该注解具备多种功能(后面详细剖析)
SpringApplication.run(MySpringBootApplication.class) 代表运行SpringBoot的启动类,参数为SpringBoot启动类的字节码对象
我们在开发中反复修改类、页面等资源,每次修改后都是需要重新启动才生效,这样每次启动都很麻烦,浪费了大量的时间,我们可以在修改代码后不重启就能生效,在 pom.xml 中添加如下配置就可以实现这样的功能,我们称之为热部署。实现热部署有三种方式,本课程讲devtools实现热部署方式!
org.springframework.boot
spring-boot-devtools
【备注】devtools的原理:
深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间。
因为Intellij IEDA默认情况下不会自动编译,需要对IDEA进行自动编译的设置,如下:
然后 Shift+Ctrl+Alt+/,选择Registry
启动项目之后,修改一些数据,然后重新刷新页面,即可查看更新之后的数据。不用重新启动服务了!
前缀:为了避免创建过程受网络影响,项目加载太过于缓慢,我们先对idea进行配置:
配置1:修改下载速度的宽带限制
配置2:指定archetype-catalog.xml来源
在idea软件中,提供可以直接通过spring官网快速创建一个springboot的。如下图:
比如,老师这里把项目名称改为:fast_springboot_project
提供实现不同功能的多种启动依赖,比如我们需要web功能,则可以直接选择Web -> spring Web依赖。
启动类也给我们自动创建好了:
可以使用快速入门的方式创建Controller进行访问,此处不再赘述
【温馨提示1】可能jdk的编译版本需要更改为1.8的哦!每台电脑不一样!
【温馨提示2】
SpringBoot项目启动后 迅速 执行结束,控制台打印: No active profile set, falling back to default profiles: default,并执行结束:Process finished with exit code 0.
解决方案1:改为默认使用的compile范围
解决方案2:直接删掉此坐标。因为父类已提供Tomcat依赖!