这是一个基于 Spring Boot 的腾讯广告投放平台自动化管理系统,采用经典的三层架构设计,集成了现代化的 Java 生态技术栈。
gdt-auto/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/moka/gdtauto/
│ │ │ ├── GdtAutoApplication.java # 主启动类
│ │ │ ├── controller/ # 控制层
│ │ │ ├── service/ # 服务接口层
│ │ │ │ └── impl/ # 服务实现层
│ │ │ ├── mapper/ # 数据访问层
│ │ │ ├── entity/ # 实体类
│ │ │ ├── task/ # 定时任务
│ │ │ └── config/ # 配置类
│ │ └── resources/
│ │ ├── application.yml # 应用配置
│ │ ├── logback-spring.xml # 日志配置
│ │ ├── spy.properties # P6Spy配置
│ │ └── mapper/ # MyBatis XML映射文件
│ └── test/ # 测试代码
├── pom.xml # Maven依赖配置
└── README.md # 项目说明文档
git clone <repository-url>
cd gdt-auto
创建数据库:
CREATE DATABASE gdt_auto DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
修改 src/main/resources/application.yml 中的数据库配置:
spring:
datasource:
dynamic:
datasource:
master:
url: jdbc:p6spy:mysql://localhost:3306/gdt_auto?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
username: your_username
password: your_password
修改 src/main/resources/application.yml 中的Redis配置:
spring:
data:
redis:
host: localhost
port: 6379
password: your_password # 如果有密码
database: 0
修改 src/main/resources/application.yml 中的腾讯广告API配置:
tencent:
ads:
access-token: your_access_token
refresh-token: your_refresh_token
app-id: your_app_id
secret: your_secret
mvn clean install
mvn spring-boot:run
或者在IDE中直接运行 GdtAutoApplication.java 主类。
# 打包
mvn clean package -DskipTests
# 运行jar包
java -jar target/gdt-auto-1.0.0.jar
# 指定环境
java -jar target/gdt-auto-1.0.0.jar --spring.profiles.active=prod
项目启动后,访问健康检查接口:
curl http://localhost:8080/health
返回 OK 表示项目运行正常。
支持多数据源动态切换,可以通过注解 @DS("数据源名称") 指定使用的数据源。
集成P6Spy,自动记录SQL执行日志,支持慢SQL检测(默认2秒)。
使用ShedLock确保定时任务在分布式环境下不会重复执行。
# 初始化仓库
git init
# 添加远程仓库
git remote add origin <repository-url>
# 提交代码
git add .
git commit -m "Initial commit"
git push -u origin main
如果8080端口被占用,可以在 application.yml 中修改:
server:
port: 8081
本项目采用 MIT 许可证。
如有问题,请提交 Issue 或联系项目维护者。