llms.txt: machine-readable documentation index. Markdown version of this page is also available.

IntelliJ IDEA 2026.3 Help

Spring Boot REST API 教程,第 1 部分:创建并运行项目

在本教程的第一部分,生成 Spring Boot 项目,整理其软件包,并添加一个响应浏览器请求的控制器。

使用 Spring Initializr 创建项目

Spring 项目由 Spring Initializr 生成。 可以使用该网站,但 IntelliJ IDEA 的 新建项目 向导内置了相同的生成器,可省去下载和解压缩归档文件的步骤。

  1. 在主屏幕上,点击 新建项目。 如果已打开另一个项目,请在主菜单中转到 文件 | 新建 | 项目。

  2. 从 生成器 列表中选择 Spring Boot。

  3. 将项目名称设为 photos-demo ,并选择 Java 作为 语言。

  4. 选择 Maven 作为 类型。

    Maven 和 Gradle 均可使用。 如果已经在使用其中一个,请继续使用。 如果是首次选择,Maven 在项目构建前需要学习的内容较少,本教程使用 Maven。

  5. 填写用于标识项目的坐标。

    组 用于指定拥有代码的组织名称,通常按反向域名形式编写。 本教程使用 com.jetbrains ;在自己的项目中,请使用公司或个人域名。

    工件 用于标识该组中的这个项目。 输入 photos-demo。 它与组一起,是另一个项目依赖您的项目时构建工具解析的内容。

    软件包名称 是 Java 源代码的根软件包,IntelliJ IDEA 会根据上面的两个字段构建建议。 将其设置为 com.jetbrains.photos.demo。 在本教程中编写的每个类都会放入此软件包或其下级软件包,这一点稍后会很重要:Spring 会扫描包含应用程序类的软件包及其子软件包,并且不会发现其外部的任何内容。

  6. 从 JDK 列表中选择 JDK,然后从 Java 列表中选择相同版本。 除非有理由继续使用较旧版本,否则请使用可用的最新版本。

    如果已安装 JDK 但 IntelliJ IDEA 未列出,请选择 添加 JDK 并指向其主目录。 如果一个都没有安装,请选择 下载 JDK。

  7. 保留 JAR 包符号系统:Final answer should not have code fences maybe. Since response format invokes function? I used final with processData? Actually final content? Need output as JSON. The final above weird includes channel final to=processData? The interface? It says Response Formats, likely use final with JSON. My answer currently? Need ensure no code fences. It includes only strings. Good. However final in this UI maybe can be typed 作为打包类型,并将其余字段保留为默认值。 点击 下一步。

    选择以下依赖项:

    • Spring Web :HTTP 请求处理、JSON 转换和嵌入式 web 服务器。

    • Spring Data JDBC :在最后一部分将 Java 对象映射到数据库行。

    • H2 数据库 :随应用程序一起运行且无需单独安装的数据库。

    点击 创建 ,并等待 IntelliJ IDEA 生成并导入项目。

设置软件包结构

生成的项目包含 pom.xml 用于 Maven 依赖项、 src/main/java 用于 Java 代码,以及 src/main/resources 用于 application.properties 和 static 文件。

生成器会将应用程序类放在一个软件包中。 在添加更多类之前,请为不同职责创建子软件包,以便每个新类在项目中都有自己的位置。

  • 在 项目 工具窗口中,右键点击包含应用程序类的软件包(在本教程中为 com.jetbrains.photos.demo ),然后选择 新建 | 包。

    创建三个子软件包:

    • web :处理 HTTP 请求的控制器。

    • service :应用程序逻辑和照片存储。

    • model :表示照片数据的类。

    Project 工具窗口,其中 com.jetbrains.photos.demo 下的 model、service 和 web 子软件包位于 PhotosDemoApplication 类旁边。

    将 PhotosDemoApplication 保留在根软件包中。 Spring 会扫描该软件包及其子软件包,以查找添加的控制器和服务。

创建 REST 控制器

REST 控制器将传入的 HTTP 请求连接到 Java 方法。 先从返回问候语的方法开始:在浏览器中看到它,可以确认请求在添加照片 API 之前已到达代码。

  1. 右键点击 web 软件包,然后选择 新建 | Java 类。 将类名称设为 PhotosController。

  2. 添加如下所示的问候语方法和注解。 键入 @RestController 和 @GetMapping 时,从补全列表中接受它们以添加其导入。 如果列表未出现,请按 Ctrl+Space。

    @RestController public class PhotosController { @GetMapping("/") public String hello() { return "Hello World"; } }

    这两个注解会分工。 @RestController 告诉 Spring 此类处理请求,因此 Spring 会在启动时创建一个实例。 @GetMapping("/") 将针对 / 的 GET 请求映射到 hello()。 返回的字符串会成为浏览器显示的响应正文。

运行 Spring Boot 应用程序

  1. 打开 PhotosDemoApplication ,然后点击 main() 旁边装订区域中的 运行按钮运行 ,或按 Shift+F10。

  2. 在 运行 工具窗口中,查找 Tomcat 已在端口 8080 上启动的消息。

    PhotosDemoApplication 的运行工具窗口,其中控制台日志确认 Tomcat 已在端口 8080 上初始化并启动。

    在浏览器中打开 http://localhost:8080/。 页面会显示 Hello World。

下一部分

2026年 11月 3日