文章目录
一、项目简介
访问该音乐网站进入主页,分为两种状态:
- 未登录状态,只能查看(指定/模糊查询)音乐列表、MV列表、音乐博客。可以听音乐、看MV、查看具体的博客内容。音乐和MV实现单一播放。博客内容中包含有评论信息。
- 登录状态,可以实现未登录状态下的所有操作,同时可以有更多的操作:查看个人资料;查看喜欢列表(音乐、MV);查看我发布的博客;可以发布音乐、MV 以及博客;实现修改密码;实现注销功能。
二、项目分析
功能实现:
-
登录、注册、注销
-
查看个人信息、修改密码
-
歌曲列表、MV列表、音乐博客列表(指定/模糊查询)
-
将音乐、MV添加至喜欢列表
-
将音乐、MV从喜欢列表移除
-
查看个人博客(指定/模糊查询)
-
发布音乐、MV、博客
-
查看详细博客,可以对该博客评论并显示
三、项目设计
1、分层(总体)设计
2、数据库设计
(1)表结构设计
(2)ER图
3、实体类设计
此处只是显示实体类的属性,其中各个实体包含有getter方法和setter方法,同时含有toString方法以便于方便验证操作类的正确性。
(1)User实体类
private int id; //用户的唯一编号
private String username; //用户名称
private String password; //用户密码
private int age; //用户的年龄
private String gender; //用户的性别
private String email; //用户的邮箱
(2)Music实体类
private int id; //音乐的唯一编号
private String title; //音乐名称
private String singer; //歌手
private String url; //音乐在磁盘中存储的路径
private Timestamp time; //用户发布/上传音乐的时间
private int userId; //发布/上传音乐的用户编号(用于标识歌曲的上传者)
(3)Mv实体类
private int id; //MV的唯一编号
private String title; //MV的名称
private String singer; //歌手
private <