文档
springboot2.6参考文档
什么是SpringBoot
SpringBoot是一个独立的生产级的基于Spring的应用程序,容易上手,用少的Spring配置实现更强的功能
SpringBoot生产支持
2.6.2支持Java8,并且向上兼容Java17,Spring Framework5.3.14,Maven的版本也要是3.5以上的 若使用Gradle则要6.8,6.9,7.0版本
Servlet 容器
quickstart使用IDEA2021
目录结构
相关依赖pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.2</version>
<relativePath/>
</parent>
//添加类路径依赖项
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
第一个项目
建立目录和类
目录:controller 类:MyController.java
package com.example.day1.controller;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class MyController {
@RequestMapping("/")
String home(){
return "Hello World!";
}
}
然后运行Day1Application.java
package com.example.day1;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Day1Application {
public static void main(String[] args) {
SpringApplication.run(Day1Application.class, args);
}
}
访问你本机的8080端口
自己看一下可能不一定都是8080
对于@RestController and @RequestMapping 注解的解释
@RestController 注解
Spring在处理web请求时会使用到,@RestController 告诉 Spring 将结果字符串直接呈现给调用者。
String home(){
return "Hello World!";
}
在本方法中,回调字符串就是"Hello World!",因此@RestController将这个字符串直接返回给我们。
@RequestMapping 注解
用于提供路由信息,告诉Spring只要访问到该路径的Http请求都要映射到方法中
@RequestMapping("/")
String home(){
return "Hello World!";
}
在这里@RequestMapping的标注地址为 / ,所以任何http请求到 / 路径都会调用home()方法
总结
这两个注释进行结合,就可以达到在用户访问某个地址的后进行调用某个特定的方法,并且最后该方法的返回值会以字符串的形式进行展示给用户
扩展
后来我将String 改为int 发现如果不是使用String作为函数的返回值类型,浏览器则会以json的方式展示给用户看,当然值依然是字符串
@EnableAutoConfiguration 注解
让Spring进行自动装配 这个注解告诉 Spring Boot 根据你添加的 jar 依赖,“猜测”你想要如何配置 Spring,因为在pom.xml中有spring-boot-starter-web,这个依赖包含了Tomcat和Spring MVC,所以Spring会认为我们在开发Web应用程序,并且自动帮我们进行装配
main方法解读
SpringApplication.run(Day1Application.class, args);
该方法是程序的入口,标志着Spring应用程序使用run()方法启动执行类和args数组
打jar包
添加配置
SpringBoot允许我们直接嵌套jar 要创建一个可执行的jar,我们需要将Spring Boover Maven插件添加到我们的pom.xml 所以我们需要添加下面的配置
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
打包
在IDEA中打开终端输入mvn package 命令
mvn package
如图打包成功 打开项目目录下的target目录你就可以看到了
使用jar tvf 查看jar包内部信息
jar tvf day1-0.0.1-SNAPSHOT.jar
运行原始jar文件
java -jar day1-0.0.1-SNAPSHOT.jar
运行成功 再次访问你的本机8080端口就能看到之前在IDEA上的执行的成功的后在浏览器访问看到的内容了 CTRL+C关闭
|