前情提要:终于学完springMVC了,springBoot开启!!
1.使用idea创建一个空项目
2.添加一个maven模块
3.在pom.xml中添加Spring Boot 的父级依赖项
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.2.5</version>
</parent>
添加结果如下:
4.在pom.xml中添加Web开放的场景启动器
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
5.编写MainApplication.java,添加springBoot的入口点
@SpringBootApplication
public class MainApplication {
public static void main(String[] args) {
SpringApplication.run(MainApplication.class,args);
}
}
其中,“@SpringBootApplication”用于标识一个springboot应用。
“SpringApplication.run(MainApplication.class,args);”是SpringBoot的入口点,运行这行代码时,Spring Boot 将扫描你的类路径,加载配置,创建 Spring 容器,并启动应用程序。
6.创建一个Controller,并简单处理一个HTTP请求
//@ResponseBody
//@Controller
@RestController//@ResponseBody 和@Controller的合成注解
public class HelloController {
@GetMapping("/hello")
public String hello(){
return "hello,springboot3";
}
}
其中,“@ResponseBody”用于表示该类中的所有方法的返回值将作为HTTP 响应的主体部分,若该注解放在某个方法上则表示该方法的返回值是HTTP响应的主体部分。
“@Controller”注解表示该类是一个控制类。
“@RestController”是@ResponseBody注解和@Controller注解的合成注解,即拥有两者的功能。
“@GetMapping”注解用来处理HTTP请求,当用户访问“/hello”时,SpringBoot会跳转到该控制方法中进行处理。
7.运行示例
启动主方法。
在控制台中可以看到springBoot运行的默认端口为8080.
在浏览器中输入“localhost:8080”进行访问,这里因为我们没有配置首页,所以是这样。
我们可以访问“localhost:8080/hello”,可以得到以下界面。
8.创建可执行的jar,导入spring-boot-maven-plugin
在pom.xml中添加以下语句,来添加SpringBoot应用打包插件。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
添加位置如下:
添加完成后,更新maven。
9.执行maven中clean和package命令
执行clean命令,清理 Maven 项目,删除 target
目录下的生成文件。
执行结果:
执行package命令,构建 Maven 项目并将其打包成 JAR、WAR 等格式。
执行结果:
打包完成后,可以在target目录下查看打包好的jar包。
如果查看到只有一个jar包,那么可能是没有添加spring-boot-maven-plugin,这样无法在命令行中使用命令运行。
10.从命令行行中运行jar包
打开jar包的本地目录。
在地址栏中输入“cmd”进入命令行。
输入“java -jar your.jar”运行SpringBoot。
运行结果如下:
可以使用ctrl+c正常退出。
注意:在使用命令行启动SpringBoot时,需要关闭idea中的项目,否则会产生冲突。如下图:
ending....
参考文档:
官方文档:Getting Started