作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验,被多个学校常年聘为校外企业导师,指导学生毕业设计并参与学生毕业答辩指导,有较为丰富的相关经验。期待与各位高校教师、企业讲师以及同行交流合作
主要内容:Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能与大数据、单片机开发、物联网设计与开发设计、简历模板、学习资料、面试题库、技术互助、就业指导等
业务范围:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路等。
收藏点赞不迷路 关注作者有好处
文末获取源码
BS-AI-022
一,环境介绍
语言环境:Java: jdk1.8
数据库:Mysql: mysql5.7
应用服务器:Tomcat: tomcat8.5.31
开发工具:IDEA或eclipse
技术:springboot+mysql+html+java
二,项目简介
在“双碳”目标与绿色可持续发展理念深入人心的今天,如何将环保行为量化、可视化,并激励更多人参与其中,成为了一个有意义的技术课题。本文将为大家介绍一个名为 EcoTrack 的完整Web应用项目。它不仅仅是一个环保资讯展示页,更是一套融合了碳足迹追踪、AI智能垃圾分类、积分激励商城等功能的闭环生态系统。
项目采用 Vue 3 + TypeScript + Node.js + MySQL 全栈技术栈,并接入了腾讯云图像识别API,实现了从底层数据模型到前端交互的完整落地。无论你是对全栈开发感兴趣,还是想了解AI技术在传统Web应用中的实际集成方式,这篇文章都能为你提供一些参考。
1.1 项目缘起
随着城市化进程加快,个人日常出行(汽车、公交、地铁)和垃圾处理方式对环境的影响日益显著。然而,普通用户往往缺乏直观的数据感知和正向的行为激励。EcoTrack 应运而生,旨在通过数据化、可视化和游戏化的手段,帮助用户培养绿色生活习惯。
1.2 项目定位
-
产品定位:个人环保行为管理与激励平台
-
目标用户:关注环保、追求绿色生活方式的个人用户
-
核心价值:让环保行为可量化、可追踪、有回报
1.3 业务闭环
平台围绕“环保行为 → 积分奖励 → 商品兑换 → 二手流转”构建完整闭环,鼓励用户持续参与低碳行动
1.4 前端技术栈
| 技术 | 版本 | 用途 |
|---|---|---|
| Vue 3 | 3.2.38 | 渐进式JavaScript框架,采用Composition API |
| TypeScript | 4.7.4 | 全栈类型安全,减少运行时错误 |
| Vite | 3.0.9 | 极速构建工具,支持HMR热更新 |
| Pinia | 2.0.21 | Vue 3官方推荐状态管理库 |
| Vue Router | 4.x | 单页应用路由管理,支持路由守卫 |
| Tailwind CSS | 3.3.3 | 原子化CSS框架,实现毛玻璃效果与响应式布局 |
| Chart.js | - | 数据可视化(折线图、饼图) |
1.5 后端技术栈
| 技术 | 版本 | 用途 |
|---|---|---|
| Node.js | 14.0+ | 高性能异步I/O运行时 |
| Express | 4.x | RESTful API开发框架 |
| MySQL | 8.0 | 关系型数据库,支持事务与索引优化 |
| jsonwebtoken | - | JWT双令牌身份认证(Access + Refresh) |
| bcrypt | - | 密码哈希加密(盐轮次10) |
| 腾讯云SDK | - | 图像识别API集成(垃圾分类) |
1.6 开发与部署
-
开发工具:VS Code + Git
-
包管理:npm
-
环境变量管理:
.env文件(DB配置、JWT密钥等) -
前后端分离,后端默认端口
8080,前端开发端口5173
三、核心功能模块技术实现
3.1 碳足迹追踪系统
技术亮点:基于科学碳排放系数模型,支持多出行方式计算。
核心算法:
typescript
复制
下载
function calculateEmission(tripType: string, distance: number, duration: number): number {
const emissionFactors = {
walking: 0, cycling: 0, bus: 0.05,
subway: 0.03, car: 0.2, electric: 0.08
};
const baseEmission = distance * emissionFactors[tripType];
const durationWeight = 1 + (duration / 60) * 0.1; // 怠速权重
return baseEmission * durationWeight;
}
数据可视化:
-
折线图展示碳排放趋势
-
饼图展示不同出行方式排放占比
-
环保指数评分(0-100分),综合排放量与绿色出行比例
AI建议生成:
基于用户历史出行记录,识别高碳出行方式(如汽车),计算改用公交可减少的排放量(约75%),并生成个性化减排建议。
3.2 智能垃圾分类系统(AI集成)
技术方案:腾讯云图像识别API + 关键词映射降级机制。
实现流程:
-
前端上传图片转Base64
-
后端调用腾讯云
DetectLabel接口 -
通过关键词映射表将识别标签映射至四分类(可回收/有害/厨余/其他)
-
返回分类结果与积分奖励(每次5分)
容错设计:
-
API超时设置10秒,失败时自动降级至模拟数据
-
图片压缩优化上传速度
-
识别结果缓存,避免重复请求
关键词映射示例:
typescript
复制
下载
const categoryKeywords = {
recyclable: ['塑料', '瓶子', '纸', '纸箱', '金属', '罐', '玻璃'],
harmful: ['电池', '灯泡', '药品', '油漆', '化学品'],
kitchen: ['果皮', '蔬菜', '剩菜', '食物', '茶叶'],
other: []
};
3.3 环保资讯中心
-
数据来源:支持天行数据API定时抓取
-
分类展示:政策法规、行业动态、环保科技、环保活动
-
分页加载:优化大量新闻列表的渲染性能
3.4 积分商城系统
-
双支付模式:积分兑换 / 现金购买
-
完整购物流程:浏览 → 详情 → 购物车 → 结算 → 订单管理
-
动态筛选:按分类、价格、成色等维度过滤
四,功能展示






五、项目创新点
5.1 AI技术的落地实践
-
不是简单的API调用:设计了关键词映射降级机制,在API不可用时仍能提供基础的分类服务。
-
环保建议的个性化:基于用户实际出行数据动态计算减排潜力,而非通用模板。
5.2 全栈TypeScript类型安全
前后端共享类型定义(如 Trip, WasteRecognition 接口),极大减少了接口联调时的字段拼写错误和类型不匹配问题。
5.3 闭环生态设计
将“记录-识别-激励-消费”串联起来,使环保行为产生实际价值,提升了用户粘性。
5.4 现代化UI/UX
-
毛玻璃(Glassmorphism)视觉效果
-
响应式设计,适配移动端
-
友好的错误提示与空状态展示
六,相关作品展示
基于Java开发、Python开发、PHP开发、C#开发等相关语言开发的实战项目
基于Nodejs、Vue等前端技术开发的前端实战项目
基于微信小程序和安卓APP应用开发的相关作品
基于51单片机等嵌入式物联网开发应用
基于各类算法实现的AI智能应用
基于大数据实现的各类数据管理和推荐系统










480

被折叠的 条评论
为什么被折叠?



