大作业报告

实验目的和要求(或设计要求及指标)

项目概要介绍(word、pdf各一份,不超过1500字、10m)✅

【A23】基于区块链的元宇宙数字作品知识产权保护服务平台

要求:

  • 文件以 A4 纸张格式。
  • 版面设定为直向纸张,边界为上 2cm、下 2cm、左 2cm、右 2cm、装订线 1cm。
  • 字体统一用标准楷体,字号小四,单倍行距,与前后段距离 0.5行。
  • 文件命名规则:“团队编号—团队名称—赛题编号赛题名称—项目概要介绍”

内容:

  • 前言

  • 创意描述

  • 功能简介

  • 特色综述

  • 开发工具与技术

  • 应用对象

  • 应用环境

  • 结语

项目简介ppt(ppt文档,可包括短视频和语音,不超过20页、20M)✅

要求:

  • 文件命名规则:“团队编号—团队名称—赛题编号赛题名称—项目简介 PPT”。

内容:

  • 目标与解决思路
  • 问题分析与解决方案
  • 技术路线及技术实现方案
  • 业务模式、人员组织框架及可行性分析
  • 其他

项目详细方案(Word 和 PDF 文档各一份,内容相同,大小不超过 10M)❎

要求:

  • 文件以 A4 纸张格式。
  • 版面设定为直向纸张,边界为上 2cm、下 2cm、左 2cm、右 2cm、装订线 1cm。
  • 字体统一用标准楷体,字号小四,单倍行距,与前后段距离 0.5行。
  • 文件命名规则:“团队编号—团队名称—赛题编号赛题名称—项目详细方案。

内容:

  • 前言
  • 创意描述
  • 功能简介
  • 特色综述
  • 开发工具与技术
  • 应用对象
  • 应用环境
  • 结语

项目演示视频(格式限 MP4,大小不超过 100mb,时长不超过 5 分钟)✅ ​

要求:

  • 文件命名规则:“团队编号—团队名称—赛题编号赛题名称—项目演示视频” ​

内容:

  • 项目演示视频材料,详细展示作品的技术实现方式、运行方式和完成程度等内容。

企业要求提交材料

  1. 关键模块的概要设计和创新要点(三个)说明文档
    1. 数字版权交易,蚂蚁链对接文档
    2. 智能合约编写文档
    3. 数字水印算法文档或者电子证书
  2. Demo程序源代码
    1. 文件命名规则:“团队编号—团队名称—赛题编号赛题名称—材料名称自拟

任务清单

  1. 调研数字版权保护政策与现状;文档背景之类分析
  2. 完成所选系统关键模块的需求分析;蚂蚁链构建 智能合约 智能水印 下载电子证书 数字水印
  3. 设计算法与关键模块的架构;
  4. 编码开发与功能实现;
  5. 测试验证主要功能和创新成果;
  6. 探索应用场景落地

实验内容和原理(或设计方案及原理)

解决思路

程序系统结构

此项目总体主要由三大部分组成,

  1. 基于Springboot的web后端系统。
  2. 基于Vue开发的前端页面
  3. 基于阿里云的智能合约管理

image-20240107191120375

前端网页

image-20240107191757765

前端网页流程逻辑

image-20240107191837865

数字产品交易逻辑:

image-20240107191856262

数据库设计:

image-20240107191915606

主要仪器设备及工具或开发设计软件及工具名称

  1. IDEA 集成开发工具。
  2. Vue 前端开发框架。
  3. VSCode 前端开发工具
  4. Springboot 后台管理系统开发框架,简化服务开发。
  5. 阿里云 用于在云端存储数据。
  6. Docker 用于搭建云数据库。
  7. MySql 数据存储,与后台管理系统交互
  8. Redis用于缓存处理,减轻数据库压力

实验步骤

小组分工:

姓名组内职位组内工作
A组长组织成员分工,进行项目总体设计撰写初步项目计划,担任项目经理。 Web前端设计开发,数字藏品上链存证模块的开发,组织方案的讨论,参与撰写小组最终文档。
B组员完成交易平台后端的主体开发,与数据库交互,对数据进行处理存储,根据组长和组员的建议修改程序,ppt制作,参与方案的讨论,参与撰写小组最终文档。
C组员完成项目前端页面优化,负责前端与后端进行对接工作,前期撰写概要设计和详细设计,参与方案的讨论,根据组长和组员的建议修改程序,参与撰写小组最终文档。
D组员根据项目章程对计划进行进度监督,参与方案的讨论,根据组长和组员的建议修改程序,参与后期项目详细文档完善
E组员担任软件测试员、ppt制作,参与方案的讨论,根据组长和组员的建议修改程序,参与撰写小组最终文档。

前端开发主要结构:

image-20240107192137322

image-20240107192144785

在components文件夹下包含了管理端的主要功能组件

image-20240107192155648

在pages文件夹下,包含了各个界面,包括首页,商城页面,登录页面等

后端代码结构:

image-20240107192213033

主体是MVC的架构模式,在此之上增加了拦截器来完善登录功能,增加工具类在其中添加了加密算法和藏品交易上链的主要代码。

image-20240107192231686

产品交易设计思路:

用户初次创建,调用智能合约,赋予创作者该作品的所有权利

img

授权及转让操作,同样调用智能合约进行更新产权信息

img

截屏2023-04-10 16.29.47

实验数据记录和处理(或设计效果)

前端网页:

截屏2023-03-31 19.20.38

实验结果与分析(或设计成效分析)

登录页面

img

首页

img

img

藏品创作页面

img

版权保护界面

img

img

藏品交易

img

img

img

阿里云智能合约

img

img

img

讨论、心得

在团队开发Vue + Springboot框架的NFT项目的过程中,我获得了许多宝贵的心得体会。这个项目结合了前端和后端的技术,为我提供了全面的开发经验。

首先,我学会了如何合作与协作。团队合作是项目成功的关键。我们通过分工合作,每个人专注于自己擅长的领域,共同推动项目的进展。我们建立了良好的沟通渠道,定期开会讨论项目的进展和遇到的问题。团队成员之间的相互支持和协作帮助我们解决了许多挑战,确保项目按时完成。其次,我深刻认识到前后端的紧密联系。Vue作为前端框架提供了出色的用户界面和交互体验,而Springboot作为后端框架则负责处理业务逻辑和数据存储。我学会了如何通过API接口连接前后端,实现数据的传输和交互。这个过程中,我不仅学到了如何使用Vue和Springboot,还深入了解了Web开发的整体流程和架构。此外,NFT项目对我来说是一个全新的领域。通过这个项目,我深入了解了NFT的概念和技术。我学会了如何使用智能合约创建和管理NFT,并将其与前端界面进行整合。这为我打开了一扇通往区块链世界的大门,让我更好地理解了区块链技术的潜力和应用场景。最后,这个项目教会了我持续学习和解决问题的能力。在开发过程中,我遇到了许多挑战和难题,例如如何处理大量数据的高效查询、如何确保NFT的安全性等等。我不断寻找解决方案,查找文档和资料,与团队成员一起讨论和探讨。通过这个过程,我学到了如何保持积极的学习态度,并且在遇到问题时能够快速找到解决方案。

总的来说,团队开发Vue + Springboot框架的NFT项目是我宝贵的学习经历。它不仅增强了我的开发能力和技术广度,还培养了我在团队中合作与协作的能力。我相信这些经验将对我的未来职业发展产生积极的影响,并为我在技术领域的探索之路打下坚实的基础。