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. 启动类(必须)

java 复制代码
// 位置: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. 控制器类

java 复制代码
// 位置: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 页面文件

动态页面(推荐使用)
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>
静态页面
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.html http://localhost:8080/ 通过控制器访问
Hello页 templates/hello.html http://localhost:8080/hello 通过控制器访问
静态页 static/welcome.html http://localhost:8080/welcome.html 直接访问
CSS文件 static/css/style.css http://localhost:8080/css/style.css 直接访问

📝 配置文件

application.properties

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 项目就能成功运行并显示网页了!

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

相关推荐
西西学代码16 小时前
Flutter---Stream
java·服务器·flutter
Blossom.11818 小时前
移动端部署噩梦终结者:动态稀疏视觉Transformer的量化实战
java·人工智能·python·深度学习·算法·机器学习·transformer
静若繁花_jingjing19 小时前
IDEA下载
java·ide·intellij-idea
代码丰19 小时前
函数式接口+default接口+springAi 中的ducumentReader去理解为什么存在default接口的形式
java
果汁华20 小时前
java学习连续打卡30天(1)
java
武子康21 小时前
Java-171 Neo4j 备份与恢复 + 预热与执行计划实战
java·开发语言·数据库·性能优化·系统架构·nosql·neo4j
m0_6398171521 小时前
基于springboot火锅店管理系统【带源码和文档】
java·spring boot·后端
会编程的林俊杰1 天前
SpringBoot项目启动时的依赖处理
java·spring boot·后端
一叶飘零_sweeeet1 天前
深度拆解汽车制造系统设计:用 Java + 设计模式打造高扩展性品牌 - 车型动态生成架构
java·设计模式·工厂设计模式
王家羽翼-王羽1 天前
nacos 3.1.0 运行主类报错 com.alibaba.cloud.nacos.logging.NacosLoggingAppRunListener
java