通过idea基于maven新建spring boot项目并运行(2024版本)

Last updated on August 11, 2024 pm

此博客记录如何成功运行一个spring boot项目并用APIFOX进行测试。

运行项目运行了很久都是不报错但是加载不出界面的情况,一开始以为是版本不匹配的原因,后来发现其实不是!(现在安装了JDK22、17、11三个版本……已老实)目前IDEA版本是最新版2024.1.4,JDK是22版本,maven也是最新版。

一、准备工作

1、首先需要配置JDK、maven两个软件

(1)下载软件

JDK:https://www.oracle.com/java/technologies/downloads/#jdk22-windows

我一般会下载最新版(但是老版兼容性会更好一些)

maven:https://maven.apache.org/download.cgi 下滑找到如图所示版本下载

image-20240701104309249

(2)配置环境变量

在系统变量下添加如下所示两个环境变量,变量值是文件的地址(按照自己的文件地址添加)

屏幕截图 2024-07-01 110538

在系统变量中找到Path变量,点击编辑,在后面添加如下所示两条

image-20240701110456636

cmd打开终端,输入如下命令,出现如图所示的信息,显示了maven和JDK版本,说明配置成功。

1
mvn -version

image-20240701110615522

2、 下载IntelliJ IDEA

仍旧是去官网下载:下载 IntelliJ IDEA – 领先的 Java 和 Kotlin IDE (jetbrains.com.cn)

但是我们会发现这是收费的,于是只能去下载破解版。此处贴上我当时参考的链接:

IDEA 2024.1 最新激活码,破解版安装教程(亲测有效~) - 犬小哈教程 (quanxiaoha.com)

二、开始创建项目

我运行出来的结果是这样的:

image-20240701144938865

虽然很简单但是搞了一下午加一晚上……不知道为什么跟着教程或者GPT都弄不出来,总是各种报错……后来GPT突然活了,我调整了一下文件结构然后就成功了!!

1、安装插件(可选)

很多插件都是内置的,我只迷迷糊糊安装了一个wl spring assistant,也不知道有什么用。不过首先要安装的还是汉化包。按照我搜到的教程,应该是要安装Spring Initializr这个插件的,但是它需要Spring boot helper这个插件才能正常工作。但是Spring boot helper也需要购买,免费的老版本也需要老版本的idea才行。(在我激情卸载新版本下载老版本后,我发现老版本的破解帖子大多都失效了……)

2、新建项目

(1)如图,由于我没有下载Spring Initializr这个插件,所以我只能选择Spring Boot这个选项,和网上的教程都不一样(所以我才急切想下载过去的版本,但是失败了anyway)。

image-20240701145920537

但是当我最终放弃下载老版本,又灰溜溜把新版本装好后,把鼠标放在Spring Boot这个选项上面时,它显示了这样一句话。。。。(所以其实是一样的,好像没有什么不同!)

(2)右边我选的就是这样,只改动了圈出的地方,最上面名称可以自己设置。

image-20240701150551021

(3)选择依赖项

image-20240701150654448image-20240701150713132

由于这个项目比较简单所以就选择了这两个,暂时不需要数据库的依赖项。

然后项目就创建好了!

三、配置项目

进入项目后,把重要文件夹展开后是这样(刚新建项目没有target文件夹)

image-20240701152318300

其实我不是很明白为什么会出现test文件夹(不管项目怎么命名都会出现,但是最开始是没有的……不知道是不是我按了什么不该按的)下面这两个文件是可以运行的。

image-20240701152517651image-20240701152534710

第一步:需要添加两个文件。右键下面任意一个软件包,选择添加一个java类,我命名为了helloController

image-20240701152723798

在这个文件中添加如下代码(请看注释要点!不然会报错):

1
2
3
4
5
6
7
8
9
10
11
12
13
package org.example.test; //注意test这个单词是要改成你的项目名字的

import org.springframework.stereotype.Controller; //不用改
import org.springframework.web.bind.annotation.GetMapping; //不用改

@Controller
public class helloController { //这个类名要和刚刚创建的java类名一致

@GetMapping("/")
public String home() {
return "index"; // 返回模板文件的名称,不需要扩展名
}
}

然后右键这个文件夹选择新建一个html文件,命名为index

image-20240701153234536

在文件中添加如下代码(body内添加内容,< br/ >是换行符)

1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hello</title>
</head>
<body>
##################<br/>
############<br/>
</body>
</html>

第二步就可以点击运行了。但是此时可能会报错,如你的报错原因是如下图,那么应该是跟我一样,因为默认端口号8080已经被占用了。

image-20240701153703817

解决方法也很简单,就是换个端口号,点开下面的文件,在其最上方添加一行代码server.port=8016(可以自己改端口号)(当然也可以选择在管理员终端终止8080端口运行,但是还是改个端口更简单)

image-20240701153818223

然后应该就能运行成功了!这时我们在电脑上访问localhost:8016(端口号),就可以看见我们在html中写的内容了。

四、API测试

1、在官网下载APIFox

https://apifox.com/

2、创建一个新的项目

项目类型选择html

3、添加一个新的接口

配置请求:

  • 请求方法:GET
  • 请求 URL:`http://localhost:8016‘
  • 添加查询参数:name(可选)
  • 返回相应的内容格式选html

4、点击发送按钮查看响应

image-20240701163121572

五、一些问题记录

1、依赖项thymeleaf的作用

将 Thymeleaf 集成到 Spring Boot 应用中,使得你可以使用 Thymeleaf 作为模板引擎来渲染 HTML 页面。

如果一开始新建项目时没有添加这个依赖项,也可以打开pom.xml文件中添加

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

2、Controller文件的作用

控制器(Controller)是用于处理 HTTP 请求的核心组件。控制器的主要职责是接收用户的输入,并根据该输入返回相应的响应。控制器通常与视图模板或 RESTful API 结合使用。

上面的helloController文件按理来说应该命名为HomeController,表示端口号域名不加任何后续路径,处理根路径’ / ‘并返回index.html模板。

然后我们还可以新建一个HelloController文件,用于处理 ’ hello ‘ 路径并返回一个简单的字符串响应。例如

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package org.example.demoa;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController //RESTful控制器,返回JSON数据
public class HelloController {

@GetMapping("/hello") //括号里是路径
public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
return String.format("Hello, %s!", name); //返回Hello World!
}
}

通过idea基于maven新建spring boot项目并运行(2024版本)
http://example.com/2024/07/01/通过idea基于maven新建spring-boot项目并运行(2024版本)/
Author
Yaodeer
Posted on
July 1, 2024
Licensed under