博主介绍:本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮助到您;
🍅文章末尾获取源码下载方式🍅
源码下载
功能演示
详情演示视频请文字末尾公众号咨询,我会发给您;
1:后台演示
2:客户端演示
一、项目介绍
1:注册登录:
未注册用户首先进行账号注册,注册成功后进行登录,已注册用户直接输入账号密码进行登录,登录成功后进入主页面。
2:主页面:
通过左右滑动可以实现对推荐界面、订阅界面、历史界面的切换,推荐界面通过上下滑动加载出更多内容,下方为播放控制部分,播放控制部分三个主界面通用。点击推荐界面的某一个读物内容,可以跳转到该内容的详情页面。
3:详情页面:
下拉刷新,上拉加载更多,上方放置该读物的图片,图片右侧有订阅按钮,图片下方显示播放按钮,点击切换播放状态,播放状态为播放时按钮右侧显示标题内容并实现跑马灯效果,下面展示该专辑的具体列表,用户可以选择想要听取的内容,点击列表里喜欢的片段即进入播放器页面,进行收听。
4:播放器页面:
上方进行标题的显示,中间部分显示当前节目图片并实现播放器页面图片联动,对图片进行左右滑动可对播放内容进行切换,图片下方实时显示文字,最下方显示播放进度条,可以对播放进度条进行拖拽,显示总播放时长和当前时间的更新,并实现开始播放、暂停播放,上一首,下一首播放内容的切换。对播放模式进行设置包括列表循环,随机播放,单曲循环三种模式,并且再次进入播放页面使播放模式保持上次选择。点击播放列表按钮,实现播放列表弹出,显示节目列表内容并可以对列表显示顺序进行切换,即顺序、逆序,点击列表下方关闭按钮,实现对播放列表的关闭。
5:在主界面点击搜索按钮,进入搜索页面,输入关键词进行搜索,并进行联想词推荐,下方显示推荐搜索热词,点击搜索热词可以直接进行搜索。
二、运行环境
1:客户端使用Android stuido进行开发;
2:服务端后台使用Myeclipse2014进行开发;
3:mysql数据库进行数据存储;
4:需要jdk1.7以上
5:使用雷电模拟器或者Androidstuio自带的模拟器进行运行
三、使用技术
总体设计逻辑和思路:
1:先设计数据库表文件
2:写服务端jsp页面以及写api接口给客户端提供数据
3:完成后台服务端的数据交互,也就是jsp页面数据的存储和显示
4:进行客户端页面的开发;
5:进行客户端对api接口的调用,也就是获取数据库的数据以及在客户端进行显示移动端:
1:使用android原生控件以及xml布局文件来完成界面的显示
2:使用java代码完成功能的数据和逻辑交互
3:使用http网络请求完成数据的请求;
4:使用json数据解析完成客户端数据的回调和显示服务端后台:
1:使用mysql完成数据的存储
2:使用jdbc完成数据库和代码的逻辑交互
3:使用jsp完成网页数据的显示
4:使用java代码完成api接口的编写以及以及数据的回调
四、数据库设计
/*
Navicat MySQL Data Transfer
Source Server : mydata
Source Server Version : 50528
Source Host : localhost:3306
Source Database : musicbookdb
Target Server Type : MYSQL
Target Server Version : 50528
File Encoding : 65001
Date: 2020-12-23 09:53:33
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for albumtb
-- ----------------------------
DROP TABLE IF EXISTS `albumtb`;
CREATE TABLE `albumtb` (
`albumId` int(11) NOT NULL AUTO_INCREMENT,
`albumTypeId` int(11) DEFAULT NULL,
`albumTypeName` varchar(255) DEFAULT NULL,
`albumName` varchar(255) DEFAULT NULL,
`albumInfor` varchar(255) DEFAULT NULL,
`albumImg` varchar(255) DEFAULT NULL,
PRIMARY KEY (`albumId`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of albumtb
-- ----------------------------
INSERT INTO `albumtb` VALUES ('1', '29', '小说', '凡人修仙传', '凡人修仙传凡人修仙传', 'icon_sp_3.png');
INSERT INTO `albumtb` VALUES ('2', '27', '文学', '盗墓笔记', '盗墓笔记盗墓笔记盗墓笔记盗墓笔记', 'icon_sp_2.png');
INSERT INTO `albumtb` VALUES ('3', '27', '文学', '庆余年', '庆余年庆余年庆余年庆余年庆余年', 'fengmian_1.jpg');
-- ----------------------------
-- Table structure for focustb
-- ----------------------------
DROP TABLE IF EXISTS `focustb`;
CREATE TABLE `focustb` (
`focusId` int(11) NOT NULL AUTO_INCREMENT,
`focusMessageId` int(11) DEFAULT NULL,
`focusUserId` int(11) DEFAULT NULL,
PRIMARY KEY (`focusId`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of focustb
-- ----------------------------
INSERT INTO `focustb` VALUES ('10', '2', '8');
INSERT INTO `focustb` VALUES ('11', '1', '8');
INSERT INTO `focustb` VALUES ('12', '3', '8');
-- ----------------------------
-- Table structure for hottb
-- ----------------------------
DROP TABLE IF EXISTS `hottb`;
CREATE TABLE `hottb` (
`hotId` int(11) NOT NULL AUTO_INCREMENT,
`hotInfor` varchar(255) DEFAULT NULL,
PRIMARY KEY (`hotId`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of hottb
-- ----------------------------
INSERT INTO `hottb` VALUES ('1', '周杰伦');
INSERT INTO `hottb` VALUES ('2', '鸡你太美');
INSERT INTO `hottb` VALUES ('3', '马老师');
INSERT INTO `hottb` VALUES ('4', '背带裤打篮球');
INSERT INTO `hottb` VALUES ('5', '冬至');
-- ----------------------------
-- Table structure for musicmsg
-- ----------------------------
DROP TABLE IF EXISTS `musicmsg`;
CREATE TABLE `musicmsg` (
`musicId` int(50) NOT NULL AUTO_INCREMENT,
`musiczjId` varchar(11) DEFAULT NULL,
`musicTitle` varchar(100) NOT NULL,
`musicImage` varchar(500) NOT NULL,
`musicFile` varchar(500) DEFAULT NULL,
`musicSize` varchar(255) DEFAULT NULL,
PRIMARY KEY (`musicId`)
) ENGINE=InnoDB AUTO_INCREMENT=86 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of musicmsg
-- ----------------------------
INSERT INTO `musicmsg` VALUES ('66', '2', '许嵩 - 玫瑰花的葬礼', 'book_fengmian_1.jpg', 'music1.mp3', '04:18');
INSERT INTO `musicmsg` VALUES ('67', '2', '许巍 - 第三极', 'book_fengmian_2.jpg', 'music2.mp3', '03:46');
INSERT INTO `musicmsg` VALUES ('68', '2', 'Star Sky', 'book_fengmian_3.jpg', 'music3.mp3', '05:30');
INSERT INTO `musicmsg` VALUES ('69', '2', '轻音乐一', 'book_fengmian_4.jpg', 'Bandarimc1.mp3', '05:45');
INSERT INTO `musicmsg` VALUES ('74', '1', '一直很安静', 'book_fengmian_5.jpg', 'quiet.mp3', '04:07');
INSERT INTO `musicmsg` VALUES ('75', '1', '轻音乐二', 'book_fengmian_6.jpg', 'quiet.mp3', '04:07');
INSERT INTO `musicmsg` VALUES ('76', '1', '许巍第三级新歌曲', 'book_fengmian_1.jpg', 'disanji.mp3', '03:46');
INSERT INTO `musicmsg` VALUES ('83', '1', '篆刻起源', 'book_fengmian_2.jpg', 'music3.mp3', '5:32');
INSERT INTO `musicmsg` VALUES ('84', '3', '第一集', 'fengmian_2.jpg', 'music2.mp3', '3:47');
INSERT INTO `musicmsg` VALUES ('85', '3', '第二集', 'fengmian_3.jpg', 'music3.mp3', '5:32');
-- ----------------------------
-- Table structure for recordtb
-- ----------------------------
DROP TABLE IF EXISTS `recordtb`;
CREATE TABLE `recordtb` (
`recordId` int(11) NOT NULL AUTO_INCREMENT,
`recordMusicId` int(11) DEFAULT NULL,
`recordUserId` int(11) DEFAULT NULL,
PRIMARY KEY (`recordId`)
) ENGINE=InnoDB AUTO_INCREMENT=40 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of recordtb
-- ----------------------------
INSERT INTO `recordtb` VALUES ('1', '69', '8');
INSERT INTO `recordtb` VALUES ('2', '68', '8');
INSERT INTO `recordtb` VALUES ('3', '74', '8');
INSERT INTO `recordtb` VALUES ('4', '75', '8');
INSERT INTO `recordtb` VALUES ('5', '76', '8');
INSERT INTO `recordtb` VALUES ('6', '83', '8');
INSERT INTO `recordtb` VALUES ('7', '67', '8');
INSERT INTO `recordtb` VALUES ('8', '69', '8');
INSERT INTO `recordtb` VALUES ('9', '68', '8');
INSERT INTO `recordtb` VALUES ('10', '68', '8');
INSERT INTO `recordtb` VALUES ('11', '68', '8');
INSERT INTO `recordtb` VALUES ('12', '68', '8');
INSERT INTO `recordtb` VALUES ('13', '68', '8');
INSERT INTO `recordtb` VALUES ('14', '68', '8');
INSERT INTO `recordtb` VALUES ('15', '69', '8');
INSERT INTO `recordtb` VALUES ('16', '66', '8');
INSERT INTO `recordtb` VALUES ('17', '66', '8');
INSERT INTO `recordtb` VALUES ('18', '66', '8');
INSERT INTO `recordtb` VALUES ('19', '68', '8');
INSERT INTO `recordtb` VALUES ('20', '69', '8');
INSERT INTO `recordtb` VALUES ('21', '66', '8');
INSERT INTO `recordtb` VALUES ('22', '74', '8');
INSERT INTO `recordtb` VALUES ('23', '68', '8');
INSERT INTO `recordtb` VALUES ('24', '68', '8');
INSERT INTO `recordtb` VALUES ('25', '69', '8');
INSERT INTO `recordtb` VALUES ('26', '68', '8');
INSERT INTO `recordtb` VALUES ('27', '69', '8');
INSERT INTO `recordtb` VALUES ('28', '68', '8');
INSERT INTO `recordtb` VALUES ('29', '68', '8');
INSERT INTO `recordtb` VALUES ('30', '68', '8');
INSERT INTO `recordtb` VALUES ('31', '68', '8');
INSERT INTO `recordtb` VALUES ('32', '68', '8');
INSERT INTO `recordtb` VALUES ('33', '67', '8');
INSERT INTO `recordtb` VALUES ('34', '84', '8');
INSERT INTO `recordtb` VALUES ('35', '68', '8');
INSERT INTO `recordtb` VALUES ('36', '68', '8');
INSERT INTO `recordtb` VALUES ('37', '69', '8');
INSERT INTO `recordtb` VALUES ('38', '68', '8');
INSERT INTO `recordtb` VALUES ('39', '67', '8');
-- ----------------------------
-- Table structure for typemsg
-- ----------------------------
DROP TABLE IF EXISTS `typemsg`;
CREATE TABLE `typemsg` (
`typeId` int(50) NOT NULL AUTO_INCREMENT,
`typeName` varchar(255) DEFAULT NULL,
`typeTime` varchar(100) DEFAULT NULL,
PRIMARY KEY (`typeId`)
) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of typemsg
-- ----------------------------
INSERT INTO `typemsg` VALUES ('27', '文学', '2020-12-22 17:18');
INSERT INTO `typemsg` VALUES ('28', '商业', '2020-12-22 17:18');
INSERT INTO `typemsg` VALUES ('29', '小说', '2020-12-22 17:18');
INSERT INTO `typemsg` VALUES ('30', '小品', '2020-12-22 17:18');
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`uid` int(50) NOT NULL AUTO_INCREMENT,
`uname` varchar(100) NOT NULL,
`uphone` varchar(100) NOT NULL,
`upswd` varchar(100) NOT NULL,
`utime` varchar(100) NOT NULL,
PRIMARY KEY (`uid`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('8', 'pony', '15249243002', '123456', '2020-12-22 17:18');
五、部分代码
七、源码下载
大家点赞、收藏、关注、评论啦 、查看👇🏻👇🏻👇🏻获取联系方式👇🏻👇🏻👇🏻