一个完整的 Spring Boot 应用模板,支持快速部署到 CloudBase 平台。
- Java 8 或更高版本
- Maven 3.6+ 构建工具
- 腾讯云账号并开通了 CloudBase 服务
- 基本的 Java 和 Spring Boot 开发知识
📋 详细指南:完整的项目创建步骤请参考 Spring Boot 项目创建指南
# 快速创建(基础步骤)
mvn archetype:generate -DgroupId=com.tencent.cloudrun \
-DartifactId=cloudrun-springboot \
-DarchetypeArtifactId=maven-archetype-quickstart \
-DinteractiveMode=false
cd cloudrun-springboot# 编译项目
mvn clean compile
# 启动开发服务器
mvn spring-boot:run
# 访问应用
open http://localhost:8080cloudrun-springboot/
├── src/
│ └── main/
│ ├── java/
│ │ └── com/tencent/cloudrun/
│ │ ├── CloudrunApplication.java # 主应用类
│ │ ├── controller/ # 控制器层
│ │ │ ├── HealthController.java
│ │ │ └── UserController.java
│ │ ├── entity/ # 实体类
│ │ │ └── User.java
│ │ └── dto/ # 数据传输对象
│ │ └── ApiResponse.java
│ └── resources/
│ └── application.properties # 应用配置
├── target/ # 编译输出目录
├── pom.xml # Maven 配置文件
├── scf_bootstrap # HTTP 云函数启动脚本
├── Dockerfile # 云托管容器配置
└── settings.xml # Maven 设置文件
| 特性 | HTTP 云函数 | 云托管 |
|---|---|---|
| 计费方式 | 按请求次数和执行时间 | 按资源使用量(CPU/内存) |
| 启动方式 | 冷启动,按需启动 | 持续运行 |
| 适用场景 | API 服务、轻量级应用 | 企业级应用、复杂 Web 应用 |
| 端口要求 | 固定 9000 端口 | 可自定义端口(默认 8080) |
| 扩缩容 | 自动按请求扩缩 | 支持自动扩缩容配置 |
| Java 环境 | 预配置 Java 运行时 | 完全自定义 Java 环境 |
- 选择 HTTP 云函数:轻量级 API 服务、间歇性访问、成本敏感
- 选择云托管:企业级应用、复杂 Web 应用、需要更多控制权
适合轻量级应用和 API 服务,按请求计费,冷启动快。
快速部署步骤:
- 编译打包 JAR 文件
- 创建
scf_bootstrap启动脚本 - 通过 CloudBase 控制台上传部署
适合企业级应用,支持更复杂的部署需求,容器化部署。
快速部署步骤:
- 创建
Dockerfile容器配置 - 配置
.dockerignore文件 - 通过 CloudBase 控制台或 CLI 部署
本模板包含以下 RESTful API 接口:
GET / # 欢迎页面
GET /health # 健康检查GET /api/users # 获取用户列表(支持分页)
GET /api/users/{id} # 获取单个用户
POST /api/users # 创建用户# 健康检查
curl https://your-app-url/health
# 获取用户列表(分页)
curl "https://your-app-url/api/users?page=1&limit=5"
# 创建新用户
curl -X POST https://your-app-url/api/users \
-H "Content-Type: application/json" \
-d '{"name":"测试用户","email":"test@example.com"}'- HTTP 云函数:必须使用 9000 端口
- 云托管:推荐使用 8080 端口,支持自定义
- HTTP 云函数:需要编译后的 JAR 文件和
scf_bootstrap启动脚本 - 云托管:需要
Dockerfile和.dockerignore
- 当前使用内存存储(重启后数据丢失)
- 生产环境建议集成数据库(PostgreSQL、MySQL 等)
- 轻量级应用:选择 HTTP 云函数
- 企业级应用:选择云托管
- 成本敏感:选择 HTTP 云函数
- 需要持续运行:选择云托管
<!-- 核心 Web 框架 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 数据库支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- 数据验证 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!-- 监控端点 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>在 application.properties 中配置:
# 服务器配置
server.port=${PORT:8080}
# 数据库配置(可选)
spring.datasource.url=${DATABASE_URL:jdbc:h2:mem:testdb}
spring.datasource.username=${DB_USERNAME:sa}
spring.datasource.password=${DB_PASSWORD:}
# JPA 配置
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true- 依赖注入:强大的 IoC 容器
- AOP 支持:面向切面编程
- 数据访问:Spring Data JPA 集成
- 安全框架:Spring Security 支持
- 缓存抽象:多种缓存实现支持
- 消息队列:Spring Cloud Stream 支持
- 微服务:Spring Cloud 生态系统
- 监控指标:Spring Boot Actuator
- Spring Boot 项目创建指南 - 从零开始创建项目
- HTTP 云函数部署指南 - 云函数部署详细步骤
- 云托管部署指南 - 云托管部署详细步骤
本项目采用 MIT 许可证。详情请查看 LICENSE 文件。
需要帮助?
- 查看 HTTP 云函数部署指南
- 查看 云托管部署指南
- 访问 CloudBase 官方文档