解读一个新建的 Spring Boot 项目

解读一个新建的 Spring Boot 项目。

1. 创建 Spring Boot 2.5.6 项目

步骤 1: 使用 Spring Initializr 创建项目

可以使用 Spring Initializr(https://start.spring.io/)来快速生成一个 Spring Boot 项目。

在 Spring Initializr 中选择以下配置:

  • Project: Maven Project
  • Language: Java
  • Spring Boot: 2.5.6 (在版本选择中可以指定)
  • Group: com.example
  • Artifact: demo
  • Dependencies
    • Spring Web
    • test

生成项目后,下载并解压。

步骤 2: 项目结构

生成的项目是 com.example.demo,它的目录结构大致如下:

复制代码
demo/
 ├── src/
 │    ├── main/
 │    │    ├── java/
 │    │    │    └── com/
 │    │    │         └── example/
 │    │    │              └── demo/
 │    │    │                   └── DemoApplication.java
 │    │    ├── resources/
 │    │    │    └── static/
 │    │    │    └── application.yml  (如果选择使用 YAML 格式的话)
 ├── pom.xml
 └── target/ (构建后的文件)

其中:

  • DemoApplication.java 是 Spring Boot 项目的主启动类。
  • application.properties 或 application.yml 用于配置 Spring Boot 应用程序。
  • static/ 用于存放静态资源(如 JS、CSS、图片)。
步骤 3: pom.xml 文件解析

下面是一个基础的 Spring Boot 项目的 pom.xml 文件,配置了 Spring Boot 2.5.6 版本。

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>com.example</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo</name>
    <description>Demo project for Spring Boot</description>
    <packaging>jar</packaging>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.5.6</version>
    </parent>

    <dependencies>
        <!-- Spring Boot Starter Web: 提供 Web 应用功能,包含 Tomcat、Spring MVC 等 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- Spring Boot Starter Test: 用于测试功能(JUnit、Mockito 等) -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <!-- Spring Boot Maven Plugin: 构建 Spring Boot 应用程序 -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
</project>
关键配置解读:
  1. parent : 引用了 spring-boot-starter-parent,它提供了一些默认配置,简化了 Spring Boot 项目的配置。version 指定了 Spring Boot 版本,这里是 2.5.6。
  2. dependencies列出了项目所需的依赖项:
    • spring-boot-starter-web: 包括了 Web 开发所需的库(如 Spring MVC、Tomcat)。
    • spring-boot-starter-test: 包含了测试相关的库,如 JUnit 。
  3. build : 使用 spring-boot-maven-plugin 插件来构建 Spring Boot 可执行 JAR 包。
步骤 4: 主启动类 DemoApplication.java

Spring Boot 的主启动类通常放在 src/main/java/com/example/demo 目录下,命名为 DemoApplication.java。它负责启动 Spring Boot 应用。

java 复制代码
package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication  // 标注为 Spring Boot 应用,自动配置 Spring 容器
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);  // 启动 Spring Boot 应用
    }
}
关键注解解读:
  • @SpringBootApplication: 这是一个组合注解,包含了 @Configuration(声明配置类)、@EnableAutoConfiguration(启用自动配置)和 @ComponentScan(启用组件扫描)。它是 Spring Boot 应用的入口点。
  • SpringApplication.run(...): 这是启动 Spring Boot 应用的静态方法,负责初始化 Spring 上下文和运行应用。
步骤 5: 配置文件 (application.yml)

application.yml文件位于 src/main/resources 目录下,默认情况下,Spring Boot 会在这里查找应用程序的配置。可以在此文件中配置服务器端口、数据库连接等。

yaml 复制代码
server:
  port: 8080

2. 启动项目

在项目根目录下,可以使用以下命令启动 Spring Boot 应用:

通过 IDE(如 IntelliJ IDEA )运行 DemoApplication 类中的 main 方法来启动项目。

访问 http://localhost:8080 查看默认的 Spring Boot 欢迎页面。

总结

  1. 项目结构 :Spring Boot 项目的结构简洁,包含源代码和资源文件,DemoApplication 是启动类,application.yml 配置文件用于自定义配置。
  2. pom.xml 解读 :pom.xml 定义了项目的依赖、插件以及 Spring Boot 版本等信息。
  3. 主启动类 :DemoApplication.java 是 Spring Boot 项目的入口,通过 @SpringBootApplication 注解实现自动配置和组件扫描。
相关推荐
_Evan_Yao6 小时前
Redis 缓存穿透、击穿、雪崩,一次讲清!
java·spring·mybatis
梓豪csd7 小时前
消息订阅中心:谁该收到哪条通知
java·开发语言·人工智能·低代码·自动化·1024程序员节
秋饼7 小时前
Spring AI 2.1 Message Parts 深度实战:推理签名回放与跨轮记忆持久化的源码级落地
java·ai·技术分享·后端开发
王中阳Go7 小时前
两个入口答案不一致先别调模型:6 行入口口径对账表(附脚本)
人工智能·后端·python·大语言模型·1024程序员节
thefool1122668 小时前
TCP 1
java·1024程序员节
码事漫谈8 小时前
消除AI幻觉,普通人能做的五件事
后端
paopaokaka_luck10 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
金銀銅鐵10 小时前
[Java] 用 GUI 展示 EnumSet 增减元素时的内部变化(下)
java·后端·ai编程
AI人工智能+电脑小能手10 小时前
一次请求打几个下游,这个Java并行任务工具类6个方法按序聚合
java·线程池·并发编程·1024程序员节·批量处理·并行任务
Mk5987812 小时前
给 Agent 装上对话框 —— AgentScope-Java 接入 Spring Boot 与 SSE 流式实战
后端