当前位置:   article > 正文

Java项目:轻语音乐网平台(java+Springboot+ssm+mysql+maven+jsp)_轻语怎么上传歌曲

轻语怎么上传歌曲

源码获取:博客首页 "资源" 里下载!

一、项目简述

功能: 用户管理模块:用户登录、用户注册、修改密码 榜单列表模块:动态地从数据库中获取歌曲的链接和数据 在榜单中显示 歌曲搜索模块:在首页的搜索框中可以输入关键字进行歌 曲的模糊搜索 歌曲收藏模块:在榜单列表中或搜索页面中可以点击歌曲 进行收藏 我的音乐模块:收藏的歌曲会被添加到我的音乐列表中, 在我的音乐列表中也可以对歌曲进行删除操作 音乐播放器模块:在榜单、搜索页面和我的音乐列表等地 方点击歌曲可以炼专到播放页面进行播放。播放页面显示 播放进度条,删除歌曲,暂停等操作。播放页面背景为模 糊背景,根据歌手的专辑图片自动变化。

二、项目运行

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: JSP +SpringBoot + MyBatis + html+ css + JavaScript + JQuery + Ajax + Bootstrap+ maven 等等。

音乐链接服务:

  1. /**
  2. * 音乐链接服务
  3. */
  4. @Controller
  5. @RequestMapping("/musicLink")
  6. public class MusicLinkController {
  7. @Autowired
  8. protected WebResponse webResponse;
  9. @Resource
  10. protected IMusicLinkService musicLinkService;
  11. @Resource
  12. protected MusicLinkService musicLinkService2;
  13. /**
  14. * //常用注解快速解释:
  15. * @Controller :用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。
  16. * 分发处理器将会扫描使用了该注解的类的方法,并检测该方法是否使用了@RequestMapping 注解。@Controller
  17. * 只是定义了一个控制器类,而使用@RequestMapping 注解的方法才是真正处理请求的处理器。
  18. *
  19. * @RequestMapping :是一个用来处理请求地址映射的注解,可用于类或方法上。
  20. * 用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径;
  21. * 用于方法上,表示在类的父路径下追加方法上注解中的地址将会访问到该方法
  22. *
  23. * @Autowired:@Autowired 注释,它可以对类成员变量、方法及构造函数进行标注,完成自动装配的工作。 通过 @Autowired的使用来消除 setget方法。
  24. *
  25. *
  26. * @Resource:@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上。
  27. *
  28. *
  29. * @Responsebody 注解表示该方法的返回的结果直接写入 HTTP 响应正文(ResponseBody)中,
  30. * 一般在异步获取数据时使用,通常是在使用 @RequestMapping 后,返回值通常解析为跳转路径,
  31. * 加上 @Responsebody 后返回结果不会被解析为跳转路径,而是直接写入HTTP 响应正文中。
  32. * 作用: 该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。
  33. *
  34. *
  35. *
  36. *
  37. * @RequestParam(value="aa" required=false
  38. * 1.可以对传入参数指定参数名
  39. *
  40. * // 下面的对传入参数指定为aa,如果前端不传aa参数名,会报错
  41. * @RequestParam(value="aa") String inputStr
  42. *
  43. * 2、可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
  44. *
  45. * 3、如果@requestParam注解的参数是int类型,并且required=false,此时如果不传参数的话,会报错。原因是,required=false时,不传参数的话,
  46. * 会给参数赋值null,这样就会把null赋值给了int,因此会报错。
  47. *
  48. *
  49. *
  50. */
  51. // 从数据库中获取歌曲数据,在榜单中显示
  52. @RequestMapping(value = "/getMusicLinkList", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  53. @ResponseBody
  54. public WebResponse getMusicLinkList(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  55. @RequestParam(defaultValue = "1", required = false) Integer pageNo,
  56. @RequestParam(defaultValue = "30", required = false) Integer pageSize,
  57. @RequestParam(defaultValue = "正常", required = false) String tbStatus,
  58. @RequestParam(required = false) String keyword,
  59. @RequestParam(defaultValue = "ml_id", required = false) String order,
  60. @RequestParam(defaultValue = "desc", required = false) String desc) {
  61. Object data = null;
  62. String statusMsg = "";
  63. int statusCode = 200;
  64. LinkedHashMap<String, String> condition = new LinkedHashMap<String, String>();
  65. /*
  66. * if (tbStatus != null && tbStatus.length() > 0) { condition.put("tb_status='"
  67. * + tbStatus + "'", "and"); }
  68. */
  69. if (keyword != null && keyword.length() > 0) {
  70. StringBuffer buf = new StringBuffer();
  71. buf.append("(");
  72. buf.append("test_name like '%").append(keyword).append("%'");
  73. buf.append(" or ");
  74. buf.append("info like '%").append(keyword).append("%'");
  75. buf.append(" or ");
  76. buf.append("other like '%").append(keyword).append("%'");
  77. buf.append(")");
  78. condition.put(buf.toString(), "and");
  79. }
  80. String field = null;
  81. if (condition.size() > 0) {
  82. condition.put(condition.entrySet().iterator().next().getKey(), "");
  83. }
  84. int count = this.musicLinkService.getCount(condition, field);
  85. if (order != null && order.length() > 0 & "desc".equals(desc)) {
  86. order = order + " desc";
  87. }
  88. // 从数据库中获取数据,并把对象的结果集存到list列表中
  89. List<MusicLink> list = this.musicLinkService.getList(condition, pageNo, pageSize, order, field);
  90. Map<Object, Object> map = new HashMap<Object, Object>();
  91. map.put("total", count);
  92. // 如果数据库有15条音乐,则list中有15个对象,则size的大小为15
  93. int size = list.size();
  94. if (size > 0) {
  95. List<MusicLink> listFont = new ArrayList<MusicLink>();
  96. MusicLink vo;
  97. MusicLink voFont = new MusicLink();
  98. // 循环将获取到的对象及结构属性克隆到一个新的voFont对象中,并保存到动态数组中
  99. for (int i = 0; i < size; i++) {
  100. vo = list.get(i);
  101. // 通过java反射将类中当前属性字段对应的内容复制到另外一个类中
  102. BeanUtils.copyProperties(vo, voFont);
  103. listFont.add(voFont);
  104. voFont = new MusicLink();
  105. }
  106. map.put("list", listFont);
  107. // data是一个map对象
  108. data = map;
  109. statusMsg = "根据条件获取分页数据成功!!!";
  110. } else {
  111. map.put("list", list);
  112. data = map;
  113. statusCode = 202;
  114. statusMsg = "no record!!!";
  115. return webResponse.getWebResponse(statusCode, statusMsg, data);
  116. }
  117. return webResponse.getWebResponse(statusCode, statusMsg, data);
  118. }
  119. // 歌曲搜索功能
  120. @RequestMapping(value = "/getSongRearch", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  121. @ResponseBody
  122. public WebResponse getSongRearch(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  123. @RequestParam(required = false) String songName) {
  124. Object data = null;
  125. String statusMsg = "";
  126. int statusCode = 200;
  127. // 调用Mapper层的songRearch方法,进行数据库的操作
  128. List<MusicLink> list = this.musicLinkService2.songRearch(songName);
  129. int count = list.size();
  130. System.out.println();
  131. System.out.println("搜索到的歌曲数:" + count);
  132. System.out.println("结束");
  133. Map<Object, Object> map = new HashMap<Object, Object>();
  134. map.put("total", count);
  135. int size = list.size();
  136. if (size > 0) {
  137. List<MusicLink> listFont = new ArrayList<MusicLink>();
  138. MusicLink vo;
  139. MusicLink voFont = new MusicLink();
  140. for (int i = 0; i < size; i++) {
  141. vo = list.get(i);
  142. BeanUtils.copyProperties(vo, voFont);
  143. listFont.add(voFont);
  144. voFont = new MusicLink();
  145. }
  146. map.put("list", listFont);
  147. data = map;
  148. // for (int i = 0; i < map.size(); i++) {
  149. // System.out.println(map.get(listFont).toString());
  150. // }
  151. //
  152. statusMsg = "根据条件获取分页数据成功!!!";
  153. } else {
  154. map.put("list", list);
  155. data = map;
  156. statusCode = 202;
  157. statusMsg = "no record!!!";
  158. return webResponse.getWebResponse(statusCode, statusMsg, data);
  159. }
  160. return webResponse.getWebResponse(statusCode, statusMsg, data);
  161. }
  162. // 歌曲收藏
  163. @RequestMapping(value = "/addMusicCollect", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  164. @ResponseBody
  165. public WebResponse addMusicCollect(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  166. @RequestParam(required = false) int song_id, @RequestParam(required = false) String user_name,
  167. @RequestParam(required = false) String user_password, @RequestParam(required = false) String songName) {
  168. WebResponse webResponse = new WebResponse();
  169. MusicLink musicLink = new MusicLink();
  170. User user = new User();
  171. System.out.println("歌曲id:" + song_id + " 用户名:" + user_name + " 户用密码:" + user_password);
  172. Object data = null;
  173. String statusMsg = "";
  174. int statusCode = 200;
  175. String user_Id = null;
  176. try {
  177. user_Id = musicLinkService2.getUserId(user_name, user_password);
  178. } catch (Exception e) {
  179. }
  180. int userId = 0;
  181. try {
  182. // 判断字符串是否是数字,并且抛出异常
  183. boolean NotisNum = (user_Id.equals("null"));
  184. // System.out.println(NotisNum);
  185. if (!NotisNum) {
  186. userId = Integer.parseInt(user_Id);
  187. }
  188. } catch (Exception e) {
  189. }
  190. System.out.println("歌曲名:" + songName);
  191. String jSong = this.musicLinkService.judgeSong(songName, userId);
  192. int my_Id = 0;
  193. try {
  194. // 判断字符串是否是数字,并且抛出异常
  195. // boolean NotisNum
  196. // =(user_Id.equals(null)||user_Id.equals("")||user_Id.equals("null"));
  197. boolean NotisNum = (jSong.equals("null"));
  198. if (!NotisNum) {
  199. my_Id = Integer.parseInt(jSong);
  200. }
  201. } catch (Exception e) {
  202. }
  203. if (my_Id > 0) {
  204. statusCode = 201;
  205. statusMsg = "已收藏,请不要重复收藏!";
  206. } else {
  207. this.musicLinkService.insertSongRearch(song_id, userId);
  208. }
  209. System.out.println("收藏歌曲的用户id:" + userId);
  210. return webResponse.getWebResponse(statusCode, statusMsg, data);
  211. }
  212. }

用户信息控制层:

  1. /**
  2. * 用户信息控制层
  3. */
  4. @Controller
  5. @RequestMapping("/user")
  6. public class UserController {
  7. @Autowired
  8. protected WebResponse webResponse;
  9. @Resource
  10. protected IUserService userService;
  11. @Resource
  12. protected IMyMusicService MyMusicService;
  13. @Autowired
  14. UserService userService2;
  15. String newName = null;
  16. // 登录功能
  17. @RequestMapping(value = "/loginPage", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  18. @ResponseBody
  19. public WebResponse loginCon(HttpServletRequest request, HttpSession session) {
  20. // 取参数的方法,对应登录表单中的用户名name="user_name"
  21. String user_name = request.getParameter("user_name");
  22. String user_password = request.getParameter("user_password");
  23. // 调用mapper层的登录的方法,从数据库中匹配用户名和密码,并放回用户名
  24. String tname = userService2.login(user_name, user_password);
  25. String user_Id = userService2.getUserById(user_name, user_password);
  26. // newUserId = user_Id; //修改密码用的
  27. int userId = 0;
  28. try {
  29. // 判断字符串是否是数字,并且抛出异常
  30. // boolean NotisNum
  31. // =(user_Id.equals(null)||user_Id.equals("")||user_Id.equals("null"));
  32. boolean NotisNum = (user_Id.equals("null"));
  33. // System.out.println(NotisNum);
  34. if (!NotisNum) {
  35. userId = Integer.parseInt(user_Id);
  36. }
  37. } catch (Exception e) {
  38. }
  39. //
  40. session.setAttribute("tname", tname);
  41. session.setAttribute("userId", userId);
  42. Object data = null;
  43. String statusMsg = "";
  44. Integer statusCode = 200;
  45. Map<String, String> paramMap = new HashMap<String, String>();
  46. paramMap.put("user_name", user_name);
  47. paramMap.put("user_password", user_password);
  48. data = paramMap;
  49. User user = new User();
  50. user.setUser_id(userId);
  51. System.out.println("登录的id:" + user.getUser_id());
  52. System.out.println("登录的用户名:" + session.getAttribute(tname));
  53. System.out.println("前端,用户名:" + user_name + " 密码:" + user_password);
  54. System.out.println("根据前端在数据库中查找到的用户名:" + tname + " 用户的id:" + userId);
  55. // 用户名和密码匹配不成功,则返回的用户名为空
  56. if (tname == null) {
  57. System.out.println("用户不存在");
  58. System.out.println();
  59. statusMsg = "用户或密码错误!";
  60. statusCode = 201;
  61. return webResponse.getWebResponse(statusCode, statusMsg, data);
  62. } else {
  63. statusCode = 200;
  64. webResponse.setStatusCode(statusCode);
  65. System.out.println("状态码:" + webResponse.getStatusCode());
  66. System.out.println("登录成功了");
  67. System.out.println();
  68. return webResponse.getWebResponseUserId(statusCode, statusMsg, data, userId);
  69. }
  70. }
  71. // 更改密码 更改密码 更改密码
  72. @RequestMapping(value = "/resetUserPassword", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  73. @ResponseBody
  74. public WebResponse resetUserPassword(HttpServletRequest request, HttpSession session) {
  75. Object data = null;
  76. String statusMsg = "";
  77. Integer statusCode = 200;
  78. int uId = 0;
  79. // 取参数的方法,对应登录表单中的用户名
  80. String user_name = request.getParameter("user_name");
  81. String newUser_password = request.getParameter("newUser_password");
  82. try {
  83. uId = (int) this.userService2.resetPassword(user_name, newUser_password);
  84. System.out.println("修改密码返回的id:" + uId);
  85. } catch (Exception e) {
  86. }
  87. return webResponse.getWebResponse(statusCode, statusMsg, data);
  88. }
  89. // 用户注册
  90. @RequestMapping(value = "/addOrEditUser", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  91. @ResponseBody
  92. public WebResponse addOrEditTest(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  93. String user_id, @RequestParam(required = false) String user_name,
  94. @RequestParam(required = false) String user_password) {
  95. Object data = null;
  96. String statusMsg = "用户名已存在,请重新注册!";
  97. Integer statusCode = 201;
  98. String rearchName = null;
  99. try {
  100. rearchName = this.userService.rearchUserName(user_name);
  101. if (!(rearchName.equals("null"))) {
  102. return webResponse.getWebResponse(statusCode, statusMsg, data);
  103. }
  104. } catch (Exception e) {
  105. }
  106. System.out.println("判断用户是否重复:" + rearchName);
  107. if (user_id == null || user_id.length() == 0) {
  108. return this.addUser(request, response, session, user_name, user_password);
  109. } else {
  110. return this.editUser(request, response, session, user_id, user_name, user_password);
  111. }
  112. }
  113. // 添加用户
  114. @RequestMapping(value = "/addUser", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  115. @ResponseBody
  116. public WebResponse addUser(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  117. String user_name, String user_password) {
  118. Object data = null;
  119. String statusMsg = "";
  120. Integer statusCode = 200;
  121. Map<String, String> paramMap = new HashMap<String, String>();
  122. paramMap.put("user_name", user_name);
  123. paramMap.put("user_password", user_password);
  124. data = paramMap;
  125. if (user_name == null || "".equals(user_name.trim()) || user_password == null
  126. || "".equals(user_password.trim())) {
  127. statusMsg = " 参数为空错误!!!!";
  128. statusCode = 201;
  129. return webResponse.getWebResponse(statusCode, statusMsg, data);
  130. }
  131. if (user_name.length() > 255 || user_password.length() > 65535) {
  132. statusMsg = " 参数长度过长错误!!!";
  133. statusCode = 201;
  134. return webResponse.getWebResponse(statusCode, statusMsg, data);
  135. }
  136. User user = new User();
  137. boolean isAdd = true;
  138. return this.addOrEditUser(request, response, session, data, user, user_name, user_password, isAdd);
  139. }
  140. @RequestMapping(value = "/editUser", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  141. @ResponseBody
  142. public WebResponse editUser(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  143. String user_id, @RequestParam(required = false) String user_name,
  144. @RequestParam(required = false) String user_password) {
  145. Object data = null;
  146. String statusMsg = "";
  147. Integer statusCode = 200;
  148. Map<String, String> paramMap = new HashMap<String, String>();
  149. paramMap.put("user_id", user_id);
  150. paramMap.put("user_name", user_name);
  151. paramMap.put("user_password", user_password);
  152. data = paramMap;
  153. if (user_id == null || "".equals(user_id.trim())) {
  154. statusMsg = "未获得主键参数错误!!!";
  155. statusCode = 201;
  156. return webResponse.getWebResponse(statusCode, statusMsg, data);
  157. }
  158. Integer user_idNumeri = user_id.matches("^[0-9]*$") ? Integer.parseInt(user_id) : 0;
  159. if (user_idNumeri == 0) {
  160. statusMsg = "主键不为数字错误!!!";
  161. statusCode = 201;
  162. return webResponse.getWebResponse(statusCode, statusMsg, data);
  163. }
  164. User userVo = this.userService.getById(user_idNumeri);
  165. User user = new User();
  166. BeanUtils.copyProperties(userVo, user); // 浅复制,重要
  167. boolean isAdd = false;
  168. return this.addOrEditUser(request, response, session, data, user, user_name, user_password, isAdd);
  169. }
  170. /*
  171. *
  172. */
  173. private WebResponse addOrEditUser(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  174. Object data, User user, String user_name, String user_password, boolean isAdd) {
  175. String statusMsg = "";
  176. Integer statusCode = 200;
  177. if (user_name != null && !("".equals(user_name.trim()))) {
  178. if (user_name.length() > 255) {
  179. statusMsg = " 参数长度过长错误,testName";
  180. statusCode = 201;
  181. return webResponse.getWebResponse(statusCode, statusMsg, data);
  182. }
  183. // 重要,建立数据,以便后期数据库能调用数据
  184. user.setUser_name(user_name); // 建立用户名
  185. user.setUser_password(user_password); // 建立密码
  186. }
  187. if (user_password != null && !("".equals(user_password.trim()))) {
  188. if (user_password.length() > 65535) {
  189. statusMsg = " 参数长度过长错误,info";
  190. statusCode = 201;
  191. return webResponse.getWebResponse(statusCode, statusMsg, data);
  192. }
  193. }
  194. if (isAdd) {
  195. // 插入语句,插入数据库,重要
  196. this.userService.insert(user);
  197. if (user.getUser_id() > 0) {
  198. statusMsg = "成功插入!!!";
  199. } else {
  200. statusCode = 202;
  201. statusMsg = "insert false";
  202. }
  203. return webResponse.getWebResponse(statusCode, statusMsg, data);
  204. }
  205. int num = this.userService.update(user);
  206. if (num > 0) {
  207. statusMsg = "成功修改!!!";
  208. } else {
  209. statusCode = 202;
  210. statusMsg = "update false";
  211. }
  212. return webResponse.getWebResponse(statusCode, statusMsg, data);
  213. }
  214. @RequestMapping(value = "/getUserById", produces = "application/json;charset=UTF-8")
  215. @ResponseBody
  216. public WebResponse getUserById(String user_id) {
  217. Object data = user_id;
  218. Integer statusCode = 200;
  219. String statusMsg = "";
  220. if (user_id == null || user_id.length() == 0 || user_id.length() > 11) {
  221. statusMsg = "参数为空或参数过长错误!!!";
  222. statusCode = 201;
  223. return webResponse.getWebResponse(statusCode, statusMsg, data);
  224. }
  225. Integer user_idNumNumeri = user_id.matches("^[0-9]*$") ? Integer.parseInt(user_id) : 0;
  226. if (user_idNumNumeri == 0) {
  227. statusMsg = "参数数字型错误!!!";
  228. statusCode = 201;
  229. return webResponse.getWebResponse(statusCode, statusMsg, data);
  230. }
  231. User userVo = this.userService.getById(user_idNumNumeri);
  232. if (userVo != null && userVo.getUser_id() > 0) {
  233. data = userVo;
  234. statusMsg = "获取单条数据成功!!!";
  235. } else {
  236. statusCode = 202;
  237. statusMsg = "no record!!!";
  238. }
  239. return webResponse.getWebResponse(statusCode, statusMsg, data);
  240. }
  241. @RequestMapping(value = "/getOneUser", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  242. @ResponseBody
  243. public WebResponse getOneTest(@RequestParam(defaultValue = "正常", required = false) String tbStatus) {
  244. LinkedHashMap<String, String> condition = new LinkedHashMap<String, String>();
  245. condition.put("tb_status='" + tbStatus + "'", "");
  246. User userVo = this.userService.getOne(condition);
  247. Object data = null;
  248. String statusMsg = "";
  249. if (userVo != null && userVo.getUser_id() > 0) {
  250. data = userVo;
  251. statusMsg = "根据条件获取单条数据成功!!!";
  252. } else {
  253. statusMsg = "no record!!!";
  254. }
  255. return webResponse.getWebResponse(statusMsg, data);
  256. }
  257. @RequestMapping(value = "/getUserList", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  258. @ResponseBody
  259. public WebResponse getTestList(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  260. @RequestParam(defaultValue = "1", required = false) Integer pageNo,
  261. @RequestParam(defaultValue = "10", required = false) Integer pageSize,
  262. @RequestParam(defaultValue = "正常", required = false) String tbStatus,
  263. @RequestParam(required = false) String keyword,
  264. @RequestParam(defaultValue = "test_id", required = false) String order,
  265. @RequestParam(defaultValue = "desc", required = false) String desc) {
  266. Object data = null;
  267. String statusMsg = "";
  268. int statusCode = 200;
  269. LinkedHashMap<String, String> condition = new LinkedHashMap<String, String>();
  270. /*
  271. * if (tbStatus != null && tbStatus.length() > 0) { condition.put("tb_status='"
  272. * + tbStatus + "'", "and"); }
  273. */
  274. if (keyword != null && keyword.length() > 0) {
  275. StringBuffer buf = new StringBuffer();
  276. buf.append("(");
  277. buf.append("test_name like '%").append(keyword).append("%'");
  278. buf.append(" or ");
  279. buf.append("info like '%").append(keyword).append("%'");
  280. buf.append(" or ");
  281. buf.append("other like '%").append(keyword).append("%'");
  282. buf.append(")");
  283. condition.put(buf.toString(), "and");
  284. }
  285. String field = null;
  286. if (condition.size() > 0) {
  287. condition.put(condition.entrySet().iterator().next().getKey(), "");
  288. }
  289. int count = this.userService.getCount(condition, field);
  290. if (order != null && order.length() > 0 & "desc".equals(desc)) {
  291. order = order + " desc";
  292. }
  293. List<User> list = this.userService.getList(condition, pageNo, pageSize, order, field);
  294. Map<Object, Object> map = new HashMap<Object, Object>();
  295. map.put("total", count);
  296. int size = list.size();
  297. if (size > 0) {
  298. List<User> listFont = new ArrayList<User>();
  299. User vo;
  300. User voFont = new User();
  301. for (int i = 0; i < size; i++) {
  302. vo = list.get(i);
  303. BeanUtils.copyProperties(vo, voFont);
  304. listFont.add(voFont);
  305. voFont = new User();
  306. }
  307. map.put("list", listFont);
  308. data = map;
  309. statusMsg = "根据条件获取分页数据成功!!!";
  310. } else {
  311. map.put("list", list);
  312. data = map;
  313. statusCode = 202;
  314. statusMsg = "no record!!!";
  315. return webResponse.getWebResponse(statusCode, statusMsg, data);
  316. }
  317. return webResponse.getWebResponse(statusCode, statusMsg, data);
  318. }
  319. @RequestMapping(value = "/getAdminUserList", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  320. @ResponseBody
  321. public String getAdminTestList(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  322. @RequestParam(defaultValue = "1", required = false) Integer pageNo,
  323. @RequestParam(defaultValue = "10", required = false) Integer pageSize,
  324. @RequestParam(defaultValue = "正常", required = false) String tbStatus,
  325. @RequestParam(required = false) String keyword,
  326. @RequestParam(defaultValue = "test_id", required = false) String order,
  327. @RequestParam(defaultValue = "desc", required = false) String desc) {
  328. Object data = null;
  329. String statusMsg = "";
  330. int statusCode = 200;
  331. LinkedHashMap<String, String> condition = new LinkedHashMap<String, String>();
  332. if (tbStatus != null && tbStatus.length() > 0) {
  333. condition.put("tb_status='" + tbStatus + "'", "and");
  334. }
  335. if (keyword != null && keyword.length() > 0) {
  336. StringBuffer buf = new StringBuffer();
  337. buf.append("(");
  338. buf.append("test_name like '%").append(keyword).append("%'");
  339. buf.append(" or ");
  340. buf.append("info like '%").append(keyword).append("%'");
  341. buf.append(" or ");
  342. buf.append("other like '%").append(keyword).append("%'");
  343. buf.append(")");
  344. condition.put(buf.toString(), "and");
  345. }
  346. String field = null;
  347. if (condition.size() > 0) {
  348. condition.put(condition.entrySet().iterator().next().getKey(), "");
  349. }
  350. int count = this.userService.getCount(condition, field);
  351. if (order != null && order.length() > 0 & "desc".equals(desc)) {
  352. order = order + " desc";
  353. }
  354. List<User> list = this.userService.getList(condition, pageNo, pageSize, order, field);
  355. Map<Object, Object> map = new HashMap<Object, Object>();
  356. map.put("total", count);
  357. int size = list.size();
  358. if (size > 0) {
  359. map.put("list", list);
  360. data = map;
  361. statusMsg = "根据条件获取分页数据成功!!!";
  362. } else {
  363. map.put("list", list);
  364. data = map;
  365. statusCode = 202;
  366. statusMsg = "no record!!!";
  367. }
  368. return JSON.toJSONString(data);
  369. }
  370. @RequestMapping(value = "/delUser", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  371. @ResponseBody
  372. public WebResponse delTest(int id) {
  373. int num = this.userService.delBySign(id);
  374. Object data = null;
  375. String statusMsg = "";
  376. if (num > 0) {
  377. statusMsg = "成功删除!!!";
  378. } else {
  379. statusMsg = "no record!!!";
  380. }
  381. return webResponse.getWebResponse(statusMsg, data);
  382. }
  383. }

我的音乐控制层:

  1. /**
  2. * 我的音乐控制层
  3. */
  4. @Controller
  5. @RequestMapping("/myMusic")
  6. public class MyMusicController {
  7. @Autowired
  8. protected WebResponse webResponse;
  9. @Resource
  10. protected IMyMusicService myMusicService;
  11. // @Autowired
  12. // MyMusicService myMusicService2;
  13. // 歌曲收藏
  14. @RequestMapping(value = "/addMusicCollect", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  15. @ResponseBody
  16. public WebResponse addMusicCollect(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  17. @RequestParam(required = false) String user_name) {
  18. WebResponse webResponse = new WebResponse();
  19. MyMusic myMusic = new MyMusic();
  20. System.out.println("接收到的用户名:" + user_name);
  21. Integer statusCode = 200;
  22. // 数据库插入语句,对应xml文件的insert
  23. this.myMusicService.insert(myMusic);
  24. webResponse.setStatusCode(statusCode);
  25. return webResponse;
  26. }
  27. // 从数据库中获取歌曲数据,在我的音乐中显示
  28. @RequestMapping(value = "/getMyMusicList", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  29. @ResponseBody
  30. public WebResponse getMyMusicList(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  31. @RequestParam(defaultValue = "1", required = false) Integer pageNo,
  32. @RequestParam(defaultValue = "10", required = false) Integer pageSize,
  33. @RequestParam(defaultValue = "正常", required = false) String tbStatus,
  34. @RequestParam(required = false) String keyword,
  35. @RequestParam(defaultValue = "ml_id", required = false) String order,
  36. @RequestParam(defaultValue = "desc", required = false) String desc,
  37. @RequestParam(required = false) String user_name, @RequestParam(required = false) String user_password
  38. ) {
  39. // System.out.println("我的音乐显示列表前收藏的歌曲id:" + song_id);
  40. String user_Id = null;
  41. try {
  42. user_Id = myMusicService.getUserById(user_name, user_password);
  43. } catch (Exception e) {
  44. }
  45. int userId = 0;
  46. try {
  47. // 判断字符串是否是数字,并且抛出异常
  48. boolean NotisNum = (user_Id.equals("null"));
  49. // System.out.println(NotisNum);
  50. if (!NotisNum) {
  51. userId = Integer.parseInt(user_Id);
  52. }
  53. } catch (Exception e) {
  54. }
  55. System.out.println("我的音乐显示列表前用户id:" + userId);
  56. Object data = null;
  57. String statusMsg = "";
  58. int statusCode = 200;
  59. LinkedHashMap<String, String> condition = new LinkedHashMap<String, String>();
  60. /*
  61. * if (tbStatus != null && tbStatus.length() > 0) { condition.put("tb_status='"
  62. * + tbStatus + "'", "and"); }
  63. */
  64. if (keyword != null && keyword.length() > 0) {
  65. StringBuffer buf = new StringBuffer();
  66. buf.append("(");
  67. buf.append("test_name like '%").append(keyword).append("%'");
  68. buf.append(" or ");
  69. buf.append("info like '%").append(keyword).append("%'");
  70. buf.append(" or ");
  71. buf.append("other like '%").append(keyword).append("%'");
  72. buf.append(")");
  73. condition.put(buf.toString(), "and");
  74. }
  75. String field = null;
  76. if (condition.size() > 0) {
  77. condition.put(condition.entrySet().iterator().next().getKey(), "");
  78. }
  79. // int count = this.myMusicService.getCount(condition, field);
  80. if (order != null && order.length() > 0 & "desc".equals(desc)) {
  81. order = order + " desc";
  82. }
  83. // List<MyMusic> list = this.myMusicService.getList(condition, pageNo, pageSize,
  84. // order, field);
  85. try {
  86. List<MyMusic> list = this.myMusicService.getMyMusicList(userId);
  87. Map<Object, Object> map = new HashMap<Object, Object>();
  88. // map.put("total", count);
  89. int size = list.size();
  90. if (size > 0) {
  91. List<MyMusic> listFont = new ArrayList<MyMusic>();
  92. MyMusic vo;
  93. MyMusic voFont = new MyMusic();
  94. for (int i = 0; i < size; i++) {
  95. vo = list.get(i);
  96. // 通过java反射将类中当前属性字段对应的内容复制到另外一个类中
  97. BeanUtils.copyProperties(vo, voFont);
  98. listFont.add(voFont);
  99. voFont = new MyMusic();
  100. }
  101. map.put("list", listFont);
  102. data = map;
  103. statusMsg = "根据条件获取分页数据成功!!!";
  104. } else {
  105. map.put("list", list);
  106. data = map;
  107. statusCode = 202;
  108. statusMsg = "no record!!!";
  109. return webResponse.getWebResponse(statusCode, statusMsg, data);
  110. }
  111. }catch (Exception e){
  112. }
  113. return webResponse.getWebResponse(statusCode, statusMsg, data);
  114. }
  115. // 删除音乐
  116. @RequestMapping(value = "/deleteMyMusic", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
  117. @ResponseBody
  118. public WebResponse deleteMyMusic(HttpServletRequest request, HttpServletResponse response, HttpSession session,
  119. @RequestParam(required = false) Integer user_id, @RequestParam(required = false) Integer song_id) {
  120. WebResponse webResponse = new WebResponse();
  121. MyMusic myMusic = new MyMusic();
  122. System.out.println("删除音乐前的用户名id:" + user_id);
  123. Object data = null;
  124. String statusMsg = "";
  125. int statusCode = 201;
  126. int del = 0;
  127. if (user_id == null){
  128. del = this.myMusicService.deleteMyMusic(song_id, 0);
  129. }else {
  130. del = this.myMusicService.deleteMyMusic(song_id, user_id);
  131. }
  132. if (del > 0) {
  133. statusCode = 200;
  134. }
  135. return webResponse.getWebResponse(statusCode, statusMsg, data);
  136. }
  137. }

 

源码获取:博客首页 "资源" 里下载!

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/218434
推荐阅读
相关标签
  

闽ICP备14008679号