# eco-Friendly **Repository Path**: Endurancer_Program/eco-friendly ## Basic Information - **Project Name**: eco-Friendly - **Description**: 绿色环保网(环保综合服务平台,包括二手交易,环保商城,环保知识库,碳足迹计算等模块)(原创项目http://175.178.189.129:8100/login ) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 2 - **Created**: 2024-10-30 - **Last Updated**: 2025-09-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 一、项目概述 1. **项目名称**:碳享智慧生活平台 2. **项目类型**:环保生活服务平台(前后端分离) 3. **线上地址**:http://175.178.189.129:8100/login 账号:user 密码:user 4. **目标用户**: - **管理员**:负责平台整体运营和管理的人员。 - **普通用户**:使用平台进行环保知识学习、二手交易、绿色购物等操作的用户。 - **组织机构**:发布环保资讯和期刊,并与用户互动的环保组织或机构。 - **商家**:在平台上展示和销售绿色商品的商家。 5. **功能模块**: - 用户注册/登录 - 碳积分系统 - 环保知识库 - 二手交易市场 - 绿色购物商城 - 碳足迹计算器 - 帮助中心 - 个人中心 --- ### 二、环境搭建 #### 1. 开发工具 - **后端** - **IntelliJ IDEA** 或其他支持Java开发的IDE(如Eclipse):用于编写和调试后端代码。IntelliJ IDEA提供了丰富的功能,包括代码自动补全、语法检查、版本控制集成等,极大地提高了开发效率。 - **前端** - **Visual Studio Code (VS Code)**:轻量级且功能强大的文本编辑器,适合前端开发,提供了丰富的插件支持。VS Code拥有良好的社区支持和大量的扩展,可以显著提升前端开发体验。 - **数据库设计与管理** - **Navicat Premium**(建议版本不低于16):可视化工具,用于设计和管理MySQL数据库,简化数据库操作。Navicat Premium提供直观的界面和强大的功能,帮助开发者高效地进行数据库管理和维护。 #### 2. 开发环境 - **JDK** - **版本要求**:1.8 - **安装说明**:确保正确安装并配置JAVA_HOME环境变量,以便命令行和其他工具能够识别JDK。可以通过`java -version`命令验证安装是否成功。推荐使用Oracle JDK或OpenJDK。 - **Node.js** - **版本要求**:16.0+ - **安装说明**:通过官方提供的安装包进行安装,并确保npm(Node.js的包管理工具)也一并安装,方便后续安装前端依赖。可以通过`node -v`和`npm -v`命令验证安装是否成功。推荐使用nvm(Node Version Manager)来管理多个Node.js版本。 - **Maven** - **版本要求**:3.8+ - **安装说明**:Maven是Java项目的构建工具,负责管理项目依赖和执行构建生命周期任务。确保MAVEN_HOME环境变量已设置,并将`bin`目录添加到系统路径中。可以通过`mvn -version`命令验证安装是否成功。推荐使用Apache Maven官方版本。 #### 3. 数据库环境 - **MySQL** - **版本要求**:5.7或8.0 - **安装说明**:根据操作系统选择合适的MySQL安装包,并完成安装。配置数据库连接参数,确保应用程序可以正常访问数据库。可以通过`mysql -u root -p`命令登录MySQL服务器,验证安装是否成功。建议使用MySQL Workbench作为图形化管理工具。 #### 4. 第三方中间件及工具 - **Redis** - **用途**:用于缓存数据,如验证码、用户会话信息等。Redis是一个高性能的键值对存储系统,支持多种数据结构,适用于高速读写场景。 - **安装说明**:可以通过官方提供的安装包进行安装,或使用Docker容器部署。可以通过`redis-cli ping`命令验证Redis服务是否正常运行。 - **Nginx** - **用途**:作为反向代理服务器,分发请求至不同的后端服务;同时也可以用于负载均衡和静态资源的托管。Nginx以其高并发处理能力和灵活性著称。 - **安装说明**:根据操作系统选择合适的安装方式,如通过包管理器或从源码编译。可以通过`nginx -t`命令验证配置文件的正确性,使用`systemctl start nginx`启动服务。 - **Git** - **用途**:版本控制系统,用于代码管理和协作开发。Git是分布式版本控制系统,支持分支管理和团队协作。 - **安装说明**:可以通过官方提供的安装包进行安装,或使用包管理器安装。可以通过`git --version`命令验证安装是否成功。建议使用GitHub、GitLab等平台进行远程仓库管理。 - **Postman** - **用途**:API测试工具,用于测试和调试RESTful API接口。Postman提供了一个友好的用户界面,方便开发者发送HTTP请求并查看响应结果。 - **安装说明**:可以从官方网站下载安装程序,或使用Chocolatey等包管理器安装。Postman支持Windows、macOS和Linux操作系统。 - **消息队列(Message Queue, MQ)** - **用途**:提供异步通信机制,用于解耦系统组件、处理高并发请求和实现可靠的消息传递。MQ有助于优化系统性能,提升用户体验。 - **推荐工具**: - **RabbitMQ**:一个开源的消息代理软件,实现了高级消息队列协议(AMQP)。它支持多种消息模式,如发布/订阅、路由、头部交换等,并提供良好的容错性和扩展性。 - **Apache Kafka**:专为分布式高吞吐量而设计的消息系统,适用于实时数据流处理。Kafka具有持久化日志存储、水平扩展能力强等特点,非常适合大规模数据传输场景。 --- ### 三、项目结构 #### 1. 后端项目结构 - `src/main/java`:存放Java源代码,细分为以下子包: - `controller`:包含所有RESTful API控制器类,负责处理HTTP请求。 - `service`:实现业务逻辑的服务层接口和实现类。 - `mapper`:定义与数据库交互的持久层接口(MyBatis Mapper)。 - `entity`:存放实体类,对应数据库中的表结构。 - `dto`:数据传输对象,用于封装API请求和响应的数据。 - `vo`:视图对象,专门用于前端展示的数据模型。 - `exception`:自定义异常类及其处理器。 - `utils`:工具类,提供通用的功能方法,如日期格式化、字符串处理等。 - `src/main/resources`:存放非Java资源文件,包括但不限于: - `application.properties` 或 `application.yml`:Spring Boot应用配置文件。 - `mapper.xml`:MyBatis SQL映射文件。 - 其他静态资源或模板文件(如邮件模板)。 - `src/test/java`:存放单元测试和集成测试代码,确保各个组件的功能正确性。 #### 2. 前端项目结构 - `src/assets`:存放静态资源,如图片、图标、样式文件(CSS/SCSS)等。 - `src/components`:存放可复用的Vue组件,这些组件可以在不同的页面中使用,提高代码的复用性和开发效率。 - `src/router`:存放路由配置文件,定义了应用的所有路由规则以及它们对应的组件。 - `src/store`:存放Vuex状态管理的相关文件,包括状态、突变、动作等,以集中管理和共享全局状态。 - `src/views`:存放页面级组件,每个页面通常对应一个独立的Vue组件,包含了页面特有的逻辑和布局。 - `src/api`:存放与后端交互的API请求相关代码,通过Axios库发送HTTP请求并与后端通信。 - `src/utils`:存放前端工具类代码,提供辅助函数或常量定义,帮助简化开发过程。 - `src/App.vue`:应用的根组件,是整个应用的入口点,包含了主模板和全局配置。 - `src/main.js`:应用的入口文件,负责初始化Vue实例并挂载到DOM元素上,同时引入全局插件和其他必要的设置。 --- ### 四、项目创新 #### 1. **一体化环保生活服务** - **创新描述**:融合了环保知识库、二手交易市场、绿色购物城和碳足迹计算等功能,打造便捷、智能且环保的生活服务平台。 - **技术实现**:通过碳积分机制鼓励用户参与环保行动,形成良性循环。 #### 2. **智能推荐系统** - **创新描述**:采用协同过滤推荐算法,智能展示基于用户收藏和购物记录相似偏好的环保商品。 - **技术实现**:结合内容推荐、基于模型的推荐等其他推荐技术,提升用户体验。 #### 3. **实时在线咨询与交流** - **创新描述**:利用WebSocket通讯协议,提供实时、无缝的在线交流体验。 - **技术实现**:支持用户间一对一交流和商家客户服务,提高沟通效率。 #### 4. **安全稳定的支付系统** - **创新描述**:通过与支付宝接口联调,并采用高级加密技术,保障用户充值的安全性。 - **技术实现**:建立严密的支付风险控制体系,确保每一笔交易的安全。 #### 5. **碳足迹计算系统** - **创新描述**:个性化碳足迹追踪,提供减碳建议,并通过图表形式展示变化。 - **技术实现**:基于生命周期评价(LCA)方法,全面考虑产品或服务的全过程,计算用户的碳足迹。 --- ### 五、平台核心算法和技术 #### 1. 协同过滤推荐算法 - **核心算法**: - **用户基于推荐**:通过分析用户间的行为模式,找出相似用户群体,预测未知的用户偏好。此方法有助于发现具有相似兴趣的新商品或服务。 - **物品基于推荐**:通过分析物品间的相似性,推荐与用户历史偏好相似的物品。它能够帮助用户找到他们可能感兴趣的但未曾接触过的商品。 - **技术结合**:使用最近邻算法和矩阵分解等技术提高推荐系统的准确性和覆盖度,确保推荐结果既精准又广泛。 - **扩展应用**: - **加权协同过滤**:为不同用户或物品赋予不同权重,以强调重要用户或热门物品的影响力,使推荐更加个性化。 - **混合推荐系统**: - 结合内容推荐(基于商品特征)、基于模型的推荐(如深度学习模型)等其他推荐技术,弥补单一协同过滤方法的局限性,提供更丰富多样的推荐内容。 - **时序分析**: - 考虑用户行为的时间因素,动态调整推荐结果,捕捉用户兴趣的变化趋势,提供与时俱进的推荐体验。 #### 2. 支付宝接口联调 - **核心技术**: - **API调用**:涉及API的调用、数据格式转换、加密解密、签名验证等一系列操作,确保支付流程的安全性和顺畅性。 - **支付安全增强**: - 实施多重安全验证措施,包括SSL加密、风险监测系统等,有效防止欺诈行为,保障用户的资金安全。 - **支付场景优化**: - 针对不同的支付场景(如二手交易、购买绿色商品),定制化支付流程,提升用户体验,简化支付步骤。 - **数据分析和报告**: - 利用支付数据生成财务报告和市场分析,为平台运营提供决策支持,帮助理解消费模式并优化业务策略。 - **跨平台支付能力**: - 确保支付接口在不同设备和服务端的无缝对接,支持跨平台支付,提升支付便利性和覆盖面。 #### 3. WebSocket通讯协议技术 - **核心技术**: - **长连接特性**:WebSocket支持持久连接,减少了传统HTTP轮询带来的性能开销,适用于实时数据交换的应用场景。 - **高并发处理**: - 支持大量用户的同时在线连接,保证了平台在大流量访问下的稳定性和快速响应能力。 - **消息队列管理**: - 利用消息队列机制管理和调度实时消息,确保消息传递的有序性和可靠性,避免数据丢失。 #### 4. 碳足迹计算技术 - **核心技术**: - **生命周期评估(LCA)方法**:碳足迹计算技术基于LCA,全面考虑产品或服务从原材料采集、制造、使用到废弃处理的全过程,提供详尽的环境影响评估。 - **活动数据收集**: - 搜集能源消耗、材料使用、交通里程等基础数据,作为计算碳排放的基础信息。 - **应用排放因子**: - 将搜集的数据与相应的排放因子相乘,计算特定活动的碳排放量。排放因子来源于科学研究或政府数据库,确保数据的权威性和准确性。 - **生命周期影响评价**: - 使用CML、TRACI等评估模型,将生命周期清单数据转换为环境影响指标,进行综合性的环境影响评估。 - **在线计算器算法简化**: - 在线碳足迹计算器采用简化的算法,让用户只需输入基本数据即可快速获得估算值,提高了用户体验和参与度。 - **预编程算**: - 计算器背后的算法是预先编写的,将用户输入的数据与预定义的排放因子相结合,自动计算总的碳足迹,实现了自动化和便捷化。 - **算法差异与适应性**: - 不同的碳足迹计算器可能会根据具体应用场景选择不同的算法,如开源的MLCO2Impact算法用于估算机器学习项目的碳排放量,体现了技术的灵活性和针对性。 --- ### 六、功能模块实现 #### 管理员功能 1. **登录、个人信息、修改密码** - 实现管理员登录、个人信息查看和修改密码功能。 2. **管理后台管理系统所有数据** - 包括但不限于酒店审核、用户管理、房间分类管理、订单管理等。 #### 普通用户功能 1. **注册、登录、个人信息、修改密码** - 实现用户注册、登录功能,保护用户账户安全。 2. **碳积分系统** - 用户可通过签到、参与活动等方式赚取碳积分,兑换商品或服务。 3. **环保知识库** - 浏览专业环保资讯和期刊,获取环保知识,并通过点赞、评论互动。 4. **二手交易市场** - 发布和求购二手商品,与其他用户互动,获得碳积分奖励。 5. **绿色购物商城** - 购买绿色商品,浏览分类明确的商品,使用碳积分兑换商品。 6. **碳足迹计算器** - 输入日常活动数据,计算个人碳足迹,记录并分析变化。 7. **帮助中心** - 提供服务指南,解释各模块功能,协助用户掌握操作技巧。 8. **个人中心** - 管理个人信息、购物记录、订单状态等,实现一站式信息跟踪与管理。 #### 组织机构功能 1. **登录、个人信息、修改密码** - 实现组织机构登录、个人信息查看和修改密码功能。 2. **发布环保资讯和期刊** - 管理发布的信息,并查看对应的用户评论。 #### 商家功能 1. **登录、个人信息、修改密码** - 实现商家登录、个人信息查看和修改密码功能。 2. **管理环保商品信息** - 发布新产品,查看和处理用户订单,提供在线客户服务。 --- ![输入图片说明](imgs/03e55288def81eabfb209e6e15b7370.png) ![输入图片说明](imgs/0fdd230d2e15ebcb3b64f6f265ed540.png) ![输入图片说明](imgs/10f48c6a7b37e9df2286b2bfd9ab6c9.png) ![输入图片说明](imgs/a27199f221de743631bb359b6b2b937.png) ![输入图片说明](imgs/a4d8728b527ffec6c26d0c1e8893bf0.png) ![输入图片说明](imgs/a71c3a7c9d68e8df24740bca7b9a9dc.png) ![输入图片说明](imgs/b40dce10a3bbc814afd0d201d01b26d.png) ![输入图片说明](imgs/c45892210031d0625f949ff46cbd1f7.png) ![输入图片说明](imgs/c5b796727b066acb0eb6f3a94a117a0.png) ![输入图片说明](imgs/f1120aa5947dd71e989d1d6645b931e.png) ![输入图片说明](imgs/f6aca3abb9d610f85638ce6f839e4b7.png)