基于javaweb和mysql的springboot音乐平台系统(java+springboot+mybaits+vue+elementui+mysql)

私信源码获取及调试交流

私信源码获取及调试交流

运行环境

Java≥8、MySQL≥5.7、Node.js≥14

开发工具

后端:eclipse/idea/myeclipse/sts等均可配置运行

前端:WebStorm/VSCode/HBuilderX等均可

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb的SpringBoot音乐平台系统(java+springboot+mybaits+vue+elementui+mysql)

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。

2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;

3.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;

4.数据库:MySql 5.7/8.0版本均可;

5.是否Maven项目:是;

技术栈

后端:SpringBoot+Mybaits

前端:Vue + elementui

使用说明

项目运行:

  1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;

  2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令;

  3. 将项目中application.yml配置文件中的数据库配置改为自己的配置;

  4. 运行项目,在浏览器中输入地址:

前台地址:http://localhost:8080/springbootrpj39/front/index.html

后台地址:http://localhost:8080/springbootrpj39/admin/dist/index.html

管理员 abo 密码 abo

用户:用户1 密码: 123456

注意项目文件路径中不能含有中文、空格、特殊字符等,否则图片会上传不成功。

songPage.setTotalPage(totalPage);

// 添加到session

HttpSession session = request.getSession();

session.setAttribute("songPage", songPage);

session.setAttribute("singer", singer);

// 重定向到album-single页面

response.sendRedirect(request.getContextPath() + "/page/user/album-single.jsp");

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 歌单管理控制层:

@WebServlet("/addSongPlayCountServlet")

songPage.setList(allSongs);

songPage.setTotalCount(totalCount);

songPage.setRows(rows);

songPage.setTotalPage(totalPage);

// 添加到session

HttpSession session = request.getSession();

session.setAttribute("songPage", songPage);

session.setAttribute("type", type);

// 重定向到album-single页面

response.sendRedirect(request.getContextPath() + "/page/user/categories-single.jsp");

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 下载歌曲管理控制层:

@WebServlet("/user/person/downLoadServlet")


_rows = "10";

int currentPage = Integer.parseInt(_currentPage);

int rows = Integer.parseInt(_rows);

PageBean<Song> songPage = new PageBean<>();

int totalCount = Math.toIntExact(songService.getAllSongsCountByType(songType));

// 计算总页码

int totalPage = (totalCount % rows)  == 0 ? (totalCount / rows) : (totalCount/rows) + 1;

songPage.setTotalPage(totalPage);

// 计算当前页码

if(currentPage <= 0){

currentPage = totalPage;

} else if(currentPage > totalPage) {

currentPage = 1;

List<Song> allSongs = songService.getSongByType(start, rows, songType);

Type type = typeService.getTypeByName(songType);

songPage.setList(allSongs);

songPage.setTotalCount(totalCount);

songPage.setRows(rows);

songPage.setTotalPage(totalPage);

// 添加到session

HttpSession session = request.getSession();

session.setAttribute("songPage", songPage);

session.setAttribute("type", type);

// 重定向到album-single页面

response.sendRedirect(request.getContextPath() + "/page/user/categories-single.jsp");

songService.addPlayCountBySongId(Integer.parseInt(songId));

JSONObject jsonObject = new JSONObject();

jsonObject.put("status", "ok");

ServletUtils.sendToPage(response, jsonObject.toString());

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 歌单分类管理控制层:

@WebServlet("/getAllCategoriesSongServlet")

public class GetAllCategoriesSongServlet extends HttpServlet {

private SongService songService = null;

String idStr = request.getParameter("songId");

System.out.println("作品id:" + idStr);

int songId = Integer.parseInt(idStr);

//从数据库找到该文件信息

Song song = songService.getSongById(songId);

//获取所要下载的文件名称

String absPath = request.getSession().getServletContext().getRealPath("");

System.out.println(absPath);

String filepath = absPath + "/" + song.getUrl();

//对文件名称编码

//  		filename = new String(filename.trim().getBytes("iso8859-1"),"UTF-8");

System.out.println("需要下载的文件路径为:" + filepath);


User user = userService.getUserByLogin(username, password);

if(user == null) {

request.setAttribute("titleMsg", "登陆失败!");

request.setAttribute("textMsg", "哎呀!<br>出了些问题,您要的页面不见了,请稍后再试");

String url = request.getContextPath() + "/page/user/login.jsp";

request.setAttribute("urlMsg", url);

request.setAttribute("pageMsg", "登陆");

request.setAttribute("codeMsg", "404");

request.getRequestDispatcher("/page/user/message.jsp").forward(request, response);

} else if(user.getActive() == 0) {

request.setAttribute("titleMsg", "登陆失败!");

System.out.println("添加歌曲ID为 " + songId + " 的播放数量!");

// 增加歌曲的播放次数

songService.addPlayCountBySongId(Integer.parseInt(songId));

JSONObject jsonObject = new JSONObject();

jsonObject.put("status", "ok");

ServletUtils.sendToPage(response, jsonObject.toString());

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 歌单分类管理控制层:

@WebServlet("/getAllCategoriesSongServlet")


@Override

public void init() throws ServletException {

songService = new SongServiceImpl();

typeService = new TypeServiceImpl();

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String songType = request.getParameter("songType");

String _currentPage = request.getParameter("currentPage"); // 当前页码

String _rows = request.getParameter("rows");// 每页显示条数

if(_currentPage == null || "".equals(_currentPage)){

_currentPage = "1";

if(_rows == null || "".equals(_rows)){


response.setCharacterEncoding("utf-8");

//获取下载的文件信息

String idStr = request.getParameter("songId");

System.out.println("作品id:" + idStr);

int songId = Integer.parseInt(idStr);

//从数据库找到该文件信息

Song song = songService.getSongById(songId);

//获取所要下载的文件名称

String absPath = request.getSession().getServletContext().getRealPath("");

System.out.println(absPath);

String filepath = absPath + "/" + song.getUrl();

//对文件名称编码
response.sendRedirect(request.getContextPath() + "/page/user/index.jsp");

} else {

request.setAttribute("titleMsg", "哎呀!");

request.setAttribute("textMsg", "出了些问题,您要的页面不见了,请稍后再试");

String url = request.getContextPath() + "/page/user/login.jsp";

request.setAttribute("urlMsg", url);

request.setAttribute("pageMsg", "登陆");

request.setAttribute("codeMsg", "404");

request.getRequestDispatcher("/page/user/message.jsp").forward(request, response);

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

歌手管理控制层: 

session.setAttribute("singer", singer);

// 重定向到album-single页面

response.sendRedirect(request.getContextPath() + "/page/user/album-single.jsp");

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 歌单管理控制层:

@WebServlet("/addSongPlayCountServlet")

public class AddSongPlayCountServlet extends HttpServlet {

private SongService songService = null;

@Override

public void init() throws ServletException {

songService = new SongServiceImpl();

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String songId = request.getParameter("songId");
@Override

public void init() throws ServletException {

songService = new SongServiceImpl();

typeService = new TypeServiceImpl();

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String songType = request.getParameter("songType");

String _currentPage = request.getParameter("currentPage"); // 当前页码

String _rows = request.getParameter("rows");// 每页显示条数

if(_currentPage == null || "".equals(_currentPage)){

_currentPage = "1";

if(_rows == null || "".equals(_rows)){

_rows = "10";


// 增加歌曲的播放次数

songService.addPlayCountBySongId(Integer.parseInt(songId));

JSONObject jsonObject = new JSONObject();

jsonObject.put("status", "ok");

ServletUtils.sendToPage(response, jsonObject.toString());

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

doPost(request, response);

 歌单分类管理控制层:

@WebServlet("/getAllCategoriesSongServlet")

public class GetAllCategoriesSongServlet extends HttpServlet {

private SongService songService = null;

private TypeService typeService = null;

@Override


int start = (currentPage - 1) * rows;

// 获取该歌手的所有歌曲

List<Song> allSongs = songService.getSongByType(start, rows, songType);

Type type = typeService.getTypeByName(songType);

songPage.setList(allSongs);

songPage.setTotalCount(totalCount);

songPage.setRows(rows);

songPage.setTotalPage(totalPage);

// 添加到session

HttpSession session = request.getSession();

session.setAttribute("songPage", songPage);

session.setAttribute("type", type);


 歌单分类管理控制层:

@WebServlet("/getAllCategoriesSongServlet")

public class GetAllCategoriesSongServlet extends HttpServlet {

private SongService songService = null;

private TypeService typeService = null;

@Override

public void init() throws ServletException {

songService = new SongServiceImpl();

typeService = new TypeServiceImpl();

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

String songType = request.getParameter("songType");

String _currentPage = request.getParameter("currentPage"); // 当前页码

String _rows = request.getParameter("rows");// 每页显示条数

if(_currentPage == null || "".equals(_currentPage)){

//对文件名称编码

//  		filename = new String(filename.trim().getBytes("iso8859-1"),"UTF-8");

System.out.println("需要下载的文件路径为:" + filepath);

//        //得到要下载的文件

File file = new File(filepath);

System.out.println("文件是否存在:" + file.exists());

//如果文件不存在

if (!file.exists()) {

request.setAttribute("titleMsg", "哎呀!");

request.setAttribute("textMsg", "出了些问题,您要下载的资源不存在了!");

String url = request.getContextPath() + "/page/user/album-single.jsp";

request.setAttribute("urlMsg", url);

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐