Spring Boot 项目标准目录结构

好的!我来根据 Myapp 这个项目名称详细说明目录结构。

📁 Myapp 项目标准目录结构

Myapp/                                  # 🎯 项目根目录
├── src/
│   └── main/
│       ├── java/                       # Java 源代码目录
│       │   └── com/                    # 公司域名倒写(推荐)
│       │       └── myapp/              # 🎯 项目名称小写
│       │           ├── MyappApplication.java    # 🎯 启动类(必须)
│       │           ├── controller/     # 🎯 控制器目录
│       │           │   ├── HomeController.java
│       │           │   └── UserController.java
│       │           ├── service/        # 业务逻辑层
│       │           │   └── UserService.java
│       │           ├── entity/         # 实体类
│       │           │   └── User.java
│       │           └── config/         # 配置类(可选)
│       │               └── WebConfig.java
│       └── resources/                  # 资源文件目录
│           ├── application.properties  # 🎯 配置文件
│           ├── static/                 # 🎯 静态资源目录
│           │   ├── css/
│           │   │   └── style.css
│           │   ├── js/
│           │   │   └── main.js
│           │   ├── images/
│           │   │   └── logo.png
│           │   └── welcome.html        # 静态HTML页面
│           └── templates/              # 🎯 模板文件目录
│               ├── index.html
│               ├── home.html
│               ├── user/
│               │   ├── list.html
│               │   └── profile.html
│               └── error/
│                   └── 404.html
├── target/                             # 编译输出目录
└── pom.xml                            # Maven配置文件

🎯 核心文件详细说明

1. 启动类(必须)

// 位置:src/main/java/com/myapp/
// 文件:MyappApplication.java

package com.myapp;

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

@SpringBootApplication
public class MyappApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyappApplication.class, args);
    }
}

2. 控制器类

// 位置:src/main/java/com/myapp/controller/
// 文件:HomeController.java

package com.myapp.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

@Controller
public class HomeController {
    
    @GetMapping("/")
    public String home(Model model) {
        model.addAttribute("projectName", "Myapp");
        model.addAttribute("welcome", "欢迎使用 Myapp 项目!");
        return "index";  // 对应 templates/index.html
    }
    
    @GetMapping("/hello")
    public String hello() {
        return "hello";  // 对应 templates/hello.html
    }
}

3. HTML 页面文件

动态页面(推荐使用)
<!-- 位置:src/main/resources/templates/ -->
<!-- 文件:index.html -->

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title th:text="${projectName}">Myapp</title>
    <link rel="stylesheet" th:href="@{/css/style.css}">
</head>
<body>
    <div class="container">
        <h1 th:text="${welcome}">欢迎消息</h1>
        <p>项目名称: <span th:text="${projectName}">Myapp</span></p>
        <a th:href="@{/hello}">去Hello页面</a>
    </div>
    <script th:src="@{/js/main.js}"></script>
</body>
</html>
静态页面
<!-- 位置:src/main/resources/static/ -->
<!-- 文件:welcome.html -->

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>静态欢迎页 - Myapp</title>
</head>
<body>
    <h1>Myapp 静态欢迎页面</h1>
    <p>这是一个静态HTML页面,不需要控制器</p>
    <p>直接访问:http://localhost:8080/welcome.html</p>
</body>
</html>

🚀 快速开始步骤

步骤1:创建启动类

src/main/java/com/myapp/MyappApplication.java

步骤2:创建控制器

src/main/java/com/myapp/controller/HomeController.java

步骤3:创建HTML页面

src/main/resources/templates/index.html

步骤4:运行项目

右键点击 MyappApplication.javaRun AsJava Application

🌐 访问路径

页面类型文件位置访问URL说明
首页templates/index.htmlhttp://localhost:8080/通过控制器访问
Hello页templates/hello.htmlhttp://localhost:8080/hello通过控制器访问
静态页static/welcome.htmlhttp://localhost:8080/welcome.html直接访问
CSS文件static/css/style.csshttp://localhost:8080/css/style.css直接访问

📝 配置文件

application.properties

# 应用配置
server.port=8080
spring.application.name=Myapp

# 模板配置
spring.thymeleaf.prefix=classpath:/templates/
spring.thymeleaf.suffix=.html
spring.thymeleaf.cache=false  # 开发时关闭缓存

# 静态资源路径
spring.web.resources.static-locations=classpath:/static/

🎯 给Myapp项目的最简方案

对于 Myapp 项目,你只需要这3个核心文件:

  1. 启动类src/main/java/com/myapp/MyappApplication.java
  2. 控制器src/main/java/com/myapp/controller/HomeController.java
  3. 首页src/main/resources/templates/index.html

按照这个结构创建,你的 Myapp 项目就能成功运行并显示网页了!

需要我帮你创建具体的文件内容吗?

### Spring Boot Web应用的标准目录结构及说明 Spring Boot 提供了一种约定优于配置的方式,使得开发者能够快速搭建应用程序。以下是典型的 Spring Boot Web 项目标准目录结构及其功能描述: #### 1. `src/main/java` 这是主要的应用代码所在位置。所有的 Java 类文件都存储在这个路径下。通常会按照包名进行组织。 - **Application Class**: 这是一个带有 `@SpringBootApplication` 注解的类[^1],它是整个 Spring Boot 应用程序的入口点。 ```java @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } } ``` #### 2. `src/main/resources` 该目录用于存放静态资源、模板以及配置文件等非编译型数据。 - **application.properties/application.yml**: 存储应用程序的主要配置参数[^3]。 - **static/**: 放置 HTML 文件、CSS 文件、JavaScript 文件以及其他前端资源。 - **templates/**: 如果使用 Thymeleaf 或其他模板引擎,则此目录用来保存视图层模板文件。 #### 3. `src/test/java` 单元测试和集成测试代码存放在这个目录里,默认遵循与生产代码相同的包层次结构。 #### 4. Maven 构建工具相关文件 (`pom.xml`) 对于基于 Maven 的项目来说,在根目录下的 pom.xml 定义了项目的依赖关系和其他元信息[^2]。例如引入 spring-boot-starter-web 来支持 web 功能。 ```xml <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> ``` 以上就是关于 Spring Boot Web 应用的一个基本且常见的目录布局解释[^4]。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值