From ffb564db0174d454944f3e46faacaf5d78739e1a Mon Sep 17 00:00:00 2001 From: Bravepping <1131302745@qq.com> Date: Wed, 23 Apr 2025 15:23:25 +0000 Subject: [PATCH 1/5] add README.md. Signed-off-by: Bravepping <1131302745@qq.com> --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..28821d9 --- /dev/null +++ b/README.md @@ -0,0 +1,27 @@ +# NBA赛事共享在线观看平台 + +## 项目概述 +一个基于SpringBoot+Vue3的NBA赛事实时直播平台,通过腾讯体育接口获取赛事数据,实现赛程展示、直播观看、数据持久化等功能。采用前后端分离架构,支持多用户并发访问。 + +## 技术栈 + +### 后端技术 +- **核心框架**: Spring Boot 2.x +- **数据存储**: + - MySQL (赛事数据持久化) + - Redis (缓存腾讯体育Cookie和热点数据) +- **数据访问**: MyBatis + MyBatis Dynamic SQL +- **任务调度**: Spring Scheduler +- **其他**: + - HttpClient (接口调用) + - JWT (鉴权预留) + +### 前端技术 +- **核心框架**: Vue 3 + Composition API +- **状态管理**: Pinia +- **路由管理**: Vue Router 4 +- **网络请求**: Axios +- **视频播放**: DPlayer +- **UI组件**: Element Plus (可选) + +## 系统架构 From 2d152da62a85e8854987b4bc39a68fa112245850 Mon Sep 17 00:00:00 2001 From: Bravepping <1131302745@qq.com> Date: Wed, 23 Apr 2025 15:24:22 +0000 Subject: [PATCH 2/5] update README.md. Signed-off-by: Bravepping <1131302745@qq.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 28821d9..08488d9 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ - **数据访问**: MyBatis + MyBatis Dynamic SQL - **任务调度**: Spring Scheduler - **其他**: - - HttpClient (接口调用) + - WebFlux(接口调用) - JWT (鉴权预留) ### 前端技术 From 251e8446d6fc82b216e25845921258368c8d3be1 Mon Sep 17 00:00:00 2001 From: Bravepping <1131302745@qq.com> Date: Wed, 23 Apr 2025 15:24:29 +0000 Subject: [PATCH 3/5] update README.md. Signed-off-by: Bravepping <1131302745@qq.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 08488d9..db045be 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ## 技术栈 ### 后端技术 -- **核心框架**: Spring Boot 2.x +- **核心框架**: Spring Boot 3.x - **数据存储**: - MySQL (赛事数据持久化) - Redis (缓存腾讯体育Cookie和热点数据) From 6bb06266b04717dbcac5845ac611b0fedaef4347 Mon Sep 17 00:00:00 2001 From: Bravepping <1131302745@qq.com> Date: Wed, 23 Apr 2025 15:31:28 +0000 Subject: [PATCH 4/5] update README.md. Signed-off-by: Bravepping <1131302745@qq.com> --- README.md | 52 ++++++++++++++++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index db045be..fa73f89 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,43 @@ # NBA赛事共享在线观看平台 -## 项目概述 -一个基于SpringBoot+Vue3的NBA赛事实时直播平台,通过腾讯体育接口获取赛事数据,实现赛程展示、直播观看、数据持久化等功能。采用前后端分离架构,支持多用户并发访问。 +## 项目简介 + +本项目是一个基于 NBA 赛事的共享在线观看平台,支持实时展示赛程、赛事直播播放等功能。用户可以便捷地浏览最新赛程信息,并使用内嵌播放器观看赛事直播。平台通过整合腾讯体育资源,自动化采集与维护直播数据,实现赛事数据的高效管理与分享。 ## 技术栈 ### 后端技术 -- **核心框架**: Spring Boot 3.x -- **数据存储**: - - MySQL (赛事数据持久化) - - Redis (缓存腾讯体育Cookie和热点数据) -- **数据访问**: MyBatis + MyBatis Dynamic SQL -- **任务调度**: Spring Scheduler -- **其他**: - - WebFlux(接口调用) - - JWT (鉴权预留) +- **Spring Boot**:构建高性能的后端服务。 +- **MyBatis**:简化数据库操作,灵活执行 SQL。 +- **MySQL**:存储赛程、直播间等核心数据。 +- **Redis**:缓存腾讯体育 Cookie 及直播数据,提升请求效率。 +- **Scheduled Task**:定时任务机制,周期性同步直播信息。 ### 前端技术 -- **核心框架**: Vue 3 + Composition API -- **状态管理**: Pinia -- **路由管理**: Vue Router 4 -- **网络请求**: Axios -- **视频播放**: DPlayer -- **UI组件**: Element Plus (可选) +- **Vue 3**:构建响应式单页应用。 +- **Pinia**:集中式状态管理,存储赛程相关数据。 +- **Vue Router**:实现页面间路由导航。 +- **Axios**:与后端进行 HTTP 通信。 +- **DPlayer**:集成播放器,用于播放赛事直播流。 -## 系统架构 +## 核心功能实现 + +- **Cookie自动更新与存储**:后端首次手动配置腾讯体育 Cookie 并保存至 Redis,通过定时任务定期刷新 Cookie,保证接口调用的稳定性。 +- **直播数据采集**:根据数据库中的赛程 ID,携带 Cookie 向腾讯体育接口发起请求,抓取对应的直播间信息,并定期存储至直播间信息表。 +- **前端展示与播放**: + - 使用 Axios 获取后端赛程数据,展示赛程信息。 + - 用户点击感兴趣的赛程后,前端将相关 ID 保存到 Pinia 中,用于后续状态追踪与页面展示。 + - 基于 DPlayer 实现直播流的嵌入播放体验。 + +## 项目亮点 + +- 实现与第三方平台(腾讯体育)无官方 API 接口的半自动数据采集与更新。 +- 利用 Redis 缓存与定时刷新机制,提升系统稳定性与数据实时性。 +- 前后端分离架构,增强了系统的可维护性和拓展性。 +- 播放器集成体验良好,用户可便捷观看赛事直播。 + +## 后续优化方向 + +- 接入用户评论与弹幕系统,提升用户互动性。 +- 增加赛事订阅与提醒功能,优化用户体验。 +- 提升异常处理与容错机制,增强系统健壮性。 From 7231281302fa1304caf8b56a1fdb18b23f6cd6a8 Mon Sep 17 00:00:00 2001 From: Bravepping <1131302745@qq.com> Date: Sat, 26 Apr 2025 02:03:46 +0000 Subject: [PATCH 5/5] update src/main/resources/application.yml. --- src/main/resources/application.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index a0b2a8f..2a584ee 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -3,15 +3,15 @@ server: spring: data: redis: - host: 110.42.255.182 + host: locahost port: 6739 application: name: NBA datasource: driver-class-name: com.mysql.cj.jdbc.Driver - url: jdbc:mysql://110.42.255.182:3306/NBA?useUnicode=true&characterEncoding=utf-8&useSSL=false + url: jdbc:mysql://locahost:3306/NBA?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root - password: inspur123 + password: password mybatis: configuration: map-underscore-to-camel-case: true