IDEA社区版 + JDK1.8 + Maven3.9.6 + Spring2.7.18
SpringBoot3不兼容JDK1.8
新建SpringBoot项目
使用SpringBoot Initializr创建
IDEA专业版可以直接创建SpringBoot项目,社区版创建可以使用网页版SpringBoot Initializr创建
- 官方SpringBoot Initializr: https://start.spring.io (不支持SpringBoot3以下及JDK1.8)
- 阿里云SpringBoot Initializr:https://start.aliyun.com (支持单应用/MVC架构)
- 三方SpringBoot Initializr:https://springinitializrjava8.cc (支持JDK1.8)
如使用 https://springinitializrjava8.cc , 选择Maven,SpringBoot2.7.18,JDK8,依赖只添加SpringBoot Web插件,点击GENERATE按钮,生成项目并自动下载,如下图:
也可以根据需求自行修改项目信息
使用IDEA打开项目即可,项目结构如下图:
手动创建项目
其实SpringBoot Initializr程序只是添加了SpringBoot相关的依赖,并新建了一些基本目录以及应用启动的主函数而已,我们也可以手动创建
在IDEA中新建普通Java项目,选择Maven和JDK1.8,不使用示例代码,如下图:
添加spring-boot-starter-web依赖
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.7.18</version></dependency></dependencies>
完整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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.example</groupId><artifactId>demo</artifactId><version>1.0-SNAPSHOT</version><properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.7.18</version></dependency></dependencies></project>
然后重新加载一下Maven依赖,如下图:
在src/main/java中创建包com.example.demo,在包中创建Java类DemoApplication
package com.example.demo;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}}
在DemoApplication中,点击左边的运行按钮可启动项目,如下图
访问 http://localhost:8080 ,由于还没有编写接口,显示如下页面是正常的:
编写接口
在com.example.demo包中新建Java类HelloController(在MVC模式中,一般接口逻辑类叫Controller,即控制器)
控制器上添加注解@RestController,表示是一个HTTP接口类,并返回HTTP响应。
在其中编写一个返回String的方法hello,并使用@GetMapping挂载接口到"/hello"路径下,代码如下:
package com.example.demo;import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class HelloController {@GetMapping("/hello")public String hello(){return "<h1>Hello</h1>";}
}
重新启动应用,访问 http://localhost:8080/hello ,显示效果如下: