音乐项目总结(终)

news2024/11/18 11:47:26

总的来说写这个项目还是状态差了,前期中期写太慢,后期疯狂赶。
讲点对写这个项目能想起来解决的问题和写的的感触。


前期:当时觉得时间很充足,有布置算法题,我竟然还花三四天去学算法,,动态规划,背包问题之类的,没有规划好时间,等开始搞的时候发现已经落别人一大截了。。。
学了一些知识,html,css,javaScript前端三剑客,还有mybatis,servlet,axios,当时学的很慢,现在想想其实感觉自己就不会学习,看的很仔细,跟着一个个敲,太浪费时间了真的太浪费时间了,而且后面要写时也记不住,刚接触servlet封装的时候,也是傻傻的想去看懂一直研究那个,后来发现没必要,那个有模版,理解一下就行不用细扣。然后就很慢了,比他们慢很多,对自己很不自信觉得自己不可能完成,自己也不喜欢问,连html要放到css和js的外面的软件包都不知道,还一直在想为什么css和js就是导不进去,然后没有什么积极性了。

中期:中期答辩后,我一个功能点都没写出来,也没有用servlet封装那个我是真的有点懵,真的差距很大很大,但我也是真的不甘心,但是还是没找到正确的学习方法,当时还是熬着夜就想把servlet弄明白,弄明白后,写到后面才发现根本不需要细扣,顿时感到后悔,大概16号写完登录注册然后时间就特别赶了。

遇到了好多大大小小的bug,首先是播放音乐,那个文件的问题

项目中文件上传到服务器。如果使用编译路径下的目录作为上传的路径,则每次重启服务器文件将消失,这个bug找了非常久,1.指定外部存储路径:将文件上传路径设置为项目外部的一个固定目录,比如 /var/uploads 或者 D:/uploads。这样可以确保文件在服务器重启后依然存在。2.使用数据库记录文件信息:上传文件后,将文件的元数据(如文件名、路径、上传时间等)存储到数据库中。即使文件被删除。

然后就是局部刷新后出现的按钮点击没反应,这个也找了很久,一直没发现问题。后面想了两种可能:
1.JavaScript 文件未重新加载因为是js控制的,如果相关的 JavaScript 文件在局部刷新后没有被重新加载,可能会导致某些功能无法正常运作

2.可能是状态问题:局部刷新可能导致某些状态信息丢失,例如输入框的值、按钮的状态等。这可能影响按钮的可用性。
然而都不是,后面才发现是事件绑定丢失  我在局部刷新时,按钮的事件绑定是通过 JavaScript 直接在 DOM 元素上进行的,这部分元素可能会因为局部刷新而被替换。如果没有重新绑定事件,按钮将无法响应点击事件。这个搞了好久。

 还有就是播放音乐,当时那个界面有点难写,又想写的好看就花费了很多时间,然后那个歌词处理ai像听不懂人话一样搞的很奇怪,最后还是靠手敲了一部分,搜了很多资料在csdn,但是渲染看起来滚动是叫ai写的,就是一个

transition:all 0.2s;  /* 过渡动画。实现歌词上下移动的动画 */

这样的样式,答辩没回答出来。

然后就是评论部分,这个之前我可以正常使用,然后答辩不知道是不是缓存问题,当时不可以同时两个用户登录发评论,最后答辩完重启电脑后两个用户登录就可以同时发评论了,当时答辩我有些紧张说第一遍没说好,大家都没听懂,被反问了一句给我整不自信了,后面支支吾吾不敢说了。这个最终答辩再说吧。

还有很多问题直接博客写过就不搬运了,写的是最近解决的

16号写完登录注册,26号后期答辩,写的挺多的,歌曲播放,二级评论,歌曲列表,搜索。就是前期太慢太慢了

最后就事补功能点,暂时在写管理员。
然后昨天和前天写了:一些完善的东西,管理员还没写好

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2178959.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【软设】项目管理

【软设】项目管理 (要会根据Gantt和Pert图求关键路径,可以看3.3的示例来了解Pert图) 一.进度管理 进度管理 是项目管理的重要组成部分,旨在确保项目在规定的时间范围内完成。进度管理不仅包括项目活动的规划,还包括监控和控制项目活动的进…

LeetCode 热题 100 回顾8

干货分享,感谢您的阅读!原文见:LeetCode 热题 100 回顾_力code热题100-CSDN博客 一、哈希部分 1.两数之和 (简单) 题目描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标…

Mixture-of-Experts (MoE): 条件计算的诞生与崛起【下篇】

将 Mixture-of-Experts 应用于 Transformers 既然我们已经研究了条件计算的早期工作,那么我们就可以看看 MoE 在变换器架构中的一些应用。 如今,基于 MoE 的 LLM 架构(如 Mixtral [13] 或 Grok)已广受欢迎,但 MoE 在语…

【C++题目】7.双指针_和为 s 的两个数字

文章目录 题目链接:题目描述:解法C 算法代码:图解 题目链接: LCR 179.查找总价格为目标值的两个商品 题目描述: 解法 解法一(暴力解法,会超时) 两层 for 循环列出所有两个数字的组合…

网络通信(学习笔记)

InputStreamReader 是 Java 中的一个类,它可以将字节输入流转换为字符输入流。它可以读取字节输入流,并使用指定的字符集将字节解码为字符。 InputStreamReader继承了Reader类 Scanner scanner new Scanner(System.in);//这是一个控制台输入的一个类&am…

巡检机器人室内配电室应用

智能巡检系统实施背景 电力系统发展已进入电气化、自动化、智能化建设加速推进的新阶段,设备规模大幅增长,新设备、新技术加快应用,装备水平取得长足发展,与此同时设备规模大幅增长,新设备、新技术加快应用&#xff0…

JAVA并发编程高级——JDK 新增的原子操作类 LongAdder

LongAdder 简单介绍 前面讲过,AtomicLong通过CAS提供了非阻塞的原子性操作,相比使用阻塞算法的同步器来说它的性能已经很好了,但是JDK开发组并不满足于此。使用AtomicLong 时,在高并发下大量线程会同时去竞争更新同一个原子变量,但是由于同时只有一个线程的CAS操作会成功,…

C++ | Leetcode C++题解之第446题等差数列划分II-子序列

题目&#xff1a; 题解&#xff1a; class Solution { public:int numberOfArithmeticSlices(vector<int> &nums) {int ans 0;int n nums.size();vector<unordered_map<long long, int>> f(n);for (int i 0; i < n; i) {for (int j 0; j < i;…

蒂森电梯变频器维修CPIK40 CPIK32

维修范围&#xff1a; 1、通力电梯变频器维修&#xff1a;V3F16L,通力V3F18维修,电梯变频器V3F25维修,KDL16,KDL32维修&#xff0c;通力电梯CPU主板维修&#xff0c;806板&#xff0c;电梯安全回路板&#xff0c;LCECCB&#xff0c;LCECEB&#xff0c;电梯显示板维修&#xff…

Python编码系列—Python状态模式:轻松管理对象状态的变化

&#x1f31f;&#x1f31f; 欢迎来到我的技术小筑&#xff0c;一个专为技术探索者打造的交流空间。在这里&#xff0c;我们不仅分享代码的智慧&#xff0c;还探讨技术的深度与广度。无论您是资深开发者还是技术新手&#xff0c;这里都有一片属于您的天空。让我们在知识的海洋中…

Grafana链接iframe嵌入Web前端一直跳登录页面的问题记录

概述 公司有个项目使用到Grafana作为监控界面,因为项目方的环境极其复杂,仅物理隔离的环境就有三四个,而且每个都得部署项目,今天在某个环境测试,查看界面遇到一个比较奇怪的Grafana问题,后面针对该问题进行跟踪分析并解决,故而博文记录,用于备忘。 问题 登录项目We…

CleanMyMac X v4.12.1 中文破解版 Mac优化清理工具

在数字时代&#xff0c;我们的Mac设备承载着越来越多的重要信息和日常任务。然而&#xff0c;随着时间的推移&#xff0c;这些设备可能会变得缓慢、混乱&#xff0c;甚至充满不必要的文件。这就是CleanMyMac X发挥作用的地方。 CleanMyMac X是一款功能强大的Mac优化工具&#…

Gson将对象转换为JSON(学习笔记)

JSON有两种表示结构&#xff0c;对象和数组。对象结构以"{"大括号开始&#xff0c;以"}"大括号结束。中间部分由0或多个以”&#xff0c;"分隔的”key(关键字)/value(值)"对构成&#xff0c;关键字和值之间以":"分隔&#xff0c;语法结…

C语言 | Leetcode C语言题解之第446题等差数列划分II-子序列

题目&#xff1a; 题解&#xff1a; #define HASH_FIND_LONG(head, findint, out) HASH_FIND(hh, head, findint, sizeof(long), out) #define HASH_ADD_LONG(head, intfield, add) HASH_ADD(hh, head, intfield, sizeof(long), add)struct HashTable {long key;int val;UT_ha…

LeetCode 热题 100 回顾20

干货分享&#xff0c;感谢您的阅读&#xff01;原文见&#xff1a;LeetCode 热题 100 回顾_力code热题100-CSDN博客 一、哈希部分 1.两数之和 &#xff08;简单&#xff09; 题目描述 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标…

数据结构串的kmp相关(求next和nextval)

傻瓜版&#xff0c;用来演示手算过程&#xff0c;个人理解用的&#xff0c;仅供参考。

Linux之进程概念

作者主页&#xff1a; 作者主页 本篇博客专栏&#xff1a;Linux专栏 创作时间 &#xff1a;2024年9月28日 基本概念&#xff1a; 进程说白了其实就是一个程序的执行实例&#xff0c;正在执行的程序。 在内核层面来说&#xff0c;就是一个担当分配资源&#xff08;CPU时间…

如何去编写一个好的单元测试,通义灵码是如何快速生成单元测试?

本文首先讲述了什么是单元测试、单元测试的价值、一个好的单元测试所具备的原则&#xff0c;进而引入如何去编写一个好的单元测试&#xff0c;通义灵码是如何快速生成单元测试的。 通义灵码插件下载安装&#xff1a;通义灵码_智能编码助手_AI编程-阿里云 目录 什么是单元测试&…

CS 工作笔记:SmartEdit 里创建的是 CMS Component

下图是在 SmartEdit 里创建的 cms Component&#xff0c;在 Back-Office 里的截图&#xff1a; SAP Commerce Cloud 的 CMS Component 是其内容管理系统 (CMS) 的核心组成部分&#xff0c;它提供了对在线商店或平台内容的灵活管理。通过这些组件&#xff0c;用户能够在不涉及复…

MinIO使用客户端进行桶和对象的管理

MinIO使用客户端进行桶和对象的管理 minio安装完成后&#xff0c;除了自带的webui管理界面&#xff0c;还可以使用官方配套的客户端mc进行管理。除此之外&#xff0c;还可以使用第三方客户端s3browser也可以完成对象和桶的生命周期管理。 1. 官方客户端mc MinIO客户端 mc 命…