java web音乐播放器_[JavaWeb]网页音乐播放器
使用网易云的接口实现页面搜索歌曲,歌词获取,网易云外链播放歌曲。
前端页面
页面展示
Js代码
获取歌曲列表
一打开页面,先去数据读取数据,拿到数据库存储的数据返回回来,在写到页面里,并存储到songList数组里,便于后期拿出数据,并且设置当前播放的索引,我们是根据索引来取数据的
获取歌词
写入歌曲列表,得到索引,就拿索引去取当前播放的歌曲,顺便获取当前播放歌曲的ID,传个加载歌词的函数,调用后端查询网易云的歌词接口,然后返回歌词数据
根据歌曲的ID获取歌词
搜索功能
根据用户输入的值调用接口查询数据,返回来后也存到一个查询歌曲列表里,searchList,便于调取
添加歌曲
绑定点击事件,当用户点击该歌曲时,先判断该歌曲是否为VIP收费歌曲,如果是收费的则不会播放,否者在判断该歌曲是否存在于我们songList中,如果存在于songList则直接播放该歌曲,不然就调用添加函数,往数据库存入这首个的歌曲。
删除歌曲
获取歌曲列表时,同时绑定点击列表歌曲的事件,如果是鼠标左键点击则为播放歌曲,右键点击则为删除该歌曲
JAVA后端
持久层
对数据库进行增删查改
业务层
调用持久层函数,当时我在后端也去验证了下是否添加的数据该数据库内已存在
表现层
各种调用函数,获取歌词,获取歌曲,删除,添加,搜索功能
工具类
一个是数据库的
还有个就是解析网易云接口的(当时想去爬取网易云的歌曲,但是拿不出数据,后来看到别人的帖子说,加密了两个参数。当时就感觉没望了,突然我就发现一篇帖子,忘记保存那篇帖子了,时间是去年的好像,他是直接把网易云的core.js扣下来了,然后每次去访问网易云时,先自己把数据加密,然后在发送,就可以正确的得到数据了,大概就是这样吧,也不是很理解大佬的思维,就感觉很牛逼!)
展示
sql语句
CREATE DATABASE cloudmusic;
USE cloudmusic;
CREATE TABLE tab_song(
songId INT,
songName VARCHAR(50),
songAutor VARCHAR(20),
songImg VARCHAR(255),
fee INT
)DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
INSERT INTO tab_song VALUES(1438781318,'全世界最好的你','许嵩','http://p1.music.126.net/ge44m1UX_M4ZKqn57QUHvw==/109951164885142881.jpg',0);
INSERT INTO tab_song VALUES(1363948882,'世间美好与你环环相扣','柏松','http://p2.music.126.net/DK1_4sP_339o5rowMdPXdw==/109951164071024476.jp',0);
INSERT INTO tab_song VALUES(1314382744,'尝试温柔','龚子婕JessieG','http://p1.music.126.net/1YnM0_qxp6IVxfIF6S157Q==/109951163579687054.jpg',0);
INSERT INTO tab_song VALUES(1344010163,'地铁等待','张紫豪','http://p1.music.126.net/ZA9WoRqY7MJzepLYZVcWqQ==/109951163837791935.jpg',0);
INSERT INTO tab_song VALUES(1370047789,'我走后','小咪','http://p1.music.126.net/LoTWeVUksWrH-BYRLnL8Lg==/109951164127532959.jp',0);
当前数据库内存在这几条数据
搜索功能
歌曲读取和歌词读取,不用说了吧,页面展示了
我们在右边输入我们需要查找的歌曲名
比如我们搜索'过活',网易云搜索结果
我们搜索结果
歌曲添加功能
当我们点击搜索出来的歌曲他就会添加到播放列表,并且播放它
当然有些是VIP歌曲,是无法播放的
就比如这首
删除功能
我们只要在播放列表选中需要删除的歌曲,右键,然后会弹出确认框,问你是否删除该歌曲。
当前们数据库有这几首歌,我们把第一首删除掉,对了,删除后,默认是从第一首开始播放,按我们不删除第一首了,我们删除尝试温柔吧。
点确定就删除了
当前数据内也没有该歌曲
基本上功能就这些吧
存在的bug
有时打开可能还没加载出歌曲,所以他不会播放,需要重新刷新页面,或者点击歌曲列表。 那就这样吧!
最后
该项目仅限学习和研究,请勿滥用。
分享给需要的同学,同时本人技术也不是很强,代码杂乱,且很多地方原理没理解清楚造成好多地方重复调用以至于乱调用,若觉得难以入眼,不要喷我,你可以选择出门右转,谢谢!
java web音乐播放器_[JavaWeb]网页音乐播放器相关推荐
- java web调用exe文件_从网页WEB上调用本地应用程序(java)
自己写了个java的桌面程序,想通过web页面调用直接打开登录页面,传账号和密码两个参数. 在网上看了很多资料,大多处理方法是自定义个协议然后通过协议来打开本地exe文件,但是这样传的参数怎么解析? ...
- 【html+css练习】小白使用html+css模拟音乐播放器构造了网页音乐播放器--1
文章目录 纯html+css构造网页音乐播放器 html代码: CSS代码: 纯html+css构造网页音乐播放器 此处参照各大音乐播放器 这个页面使用了1天的时间进行构造,由于对各语法还不是很熟悉, ...
- java web没有APP流行_简单粗暴,详细得不要不要的 JavaWeb快速入门
Paste_Image.png 前端时间我在写一个系列,是关于JavaWeb的一个入门级项目实战,我的初衷就是打算写给初学者的,希望能对他们有所帮助. 这段时间博主也接触了一些事情,感觉有必要专门把J ...
- java web聊天室论文_基于javaweb聊天室.doc
基于javaweb聊天室.doc 南嗦岌凌*4 文(设计) 本科生毕业论 题 目:基于Java网页版聊天室的设计与实现 姓名:陈义旺 学院:理学院 专业:信息与计算科学 班级:信科092 学号: 指导 ...
- java web国外 研究现状_国外javaWeb开发技术.doc
国外javaWeb开发技术.doc 外java Web开发技术 MVC结构模式是XeroxPARC在20世纪80年代为编程语言Smalltalk-80 发明的一种软件设计模式. 缑艳阳认为MVC将应用 ...
- 开源音乐播放器_使用开源音乐播放器设计生活中的配乐
开源音乐播放器 我们围绕着自己的个人配乐. 我们的音乐让我们想起了人生中最重要的时刻,并帮助我们塑造了自己的感受和看法. 让音乐播放器支持自由选择音乐的播放方式,同时又不影响播放质量非常重要,而且我一 ...
- java web 开发之道_《Java Web开发之道》PDF 下载
图书目录: 第1篇 编程 经验与 感悟篇 第1章 编程 经验谈6则 经验01 乐不思蜀--寻找编程的乐趣 经验02 水滴石穿--编程学习 经验谈 经验03 举足轻重--代码规范 经验谈 经验 ...
- html全景直播播放器,HTML5:网页如何播放VR视频?
VR视频和普通视频有什么区别? VR即虚拟现实,VR视频又名全景视频,是指使用全景摄像机拍摄的,观看时可以自由变换视角的视频. 戴上VR眼镜,随着头部转动看到的图像也随之变化,仿佛身处一个虚拟的世界中 ...
- [原创]java WEB学习笔记02:javaWeb开发的目录结构
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- java web应用开发技术_第一章 Java Web应用开发技术
Java Web应用开发是基于JavaEE(JavaEnterprise Edition)框架的,而JavaEE是建立在Java平台上的企业级应用解决方案.JavaEES框架提供的Web开发技术主要支 ...
最新文章
- 你陪我长大 我陪你变老
- Linux下的编译(环境是centos6.8 gcc 4.4.7)
- linux-进程的替换exec函数族
- mysql加入新的从节点怎么配置_MySql主从复制配置
- Sql Server2005一則怪現象
- 神经网络入门-MLP, RNN, BiRNN
- MHA故障切换和在线手工切换原理
- 机器人学习--Imperial College London机器人学课程
- Java:处理 Exception 的几种实践,很优雅,值得推荐!
- android预加载app,Android欢迎页预加载首页数据
- 真的凉了!熊猫直播宣布停服:主站流浪计划第一阶段开启
- 关于如何用python下载文件
- Excel的格式类型
- js原生写图片轮播和切换
- vgg19.npy下载
- 支付宝老将樊路远加盟阿里影业 淘票票将成下一个支付宝?
- python股票接口_小小- python用雅虎财经(yahoo)接口写简易爬虫获取A股上证所有股票(可以单独选择个股)历史数据...
- 这几个宝藏网站助力学好Python
- linux那些事之contiguous memory allocator(CMA)
- ACM有什么用(转)
热门文章
- 手机输入法,谁能笑到最后?
- ttl低电平接大电阻_FPGA中的上拉下拉电阻以及开漏推挽输出电路
- 批量给pdf加水印,请用这个办法
- 体脂的计算Java_简单测试体脂率的两种经验公式
- 小米蓝牙耳机持续白灯_小米蓝牙耳机air2怎么重置
- Python格式控制之九九乘法表打印
- 桌面cpu与服务器cpu天梯,秒懂台式电脑CPU性能 桌面CPU天梯图2017年9月最新版
- android 免root 免流,安卓无需Root一键免流软件合集,具体哪个能用自测
- lamp一键安装包不安装mysql_LAMP一键安装包-CentOS 5/6下,添加pdo_mysql
- java 敏感词检测_关于java中敏感词检测的一些总结