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.javapackage 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.javapackage 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.java → Run As → Java 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
# 应用配置
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个核心文件:
- 启动类:
src/main/java/com/myapp/MyappApplication.java - 控制器:
src/main/java/com/myapp/controller/HomeController.java - 首页:
src/main/resources/templates/index.html
按照这个结构创建,你的 Myapp 项目就能成功运行并显示网页了!
需要我帮你创建具体的文件内容吗?
