@RequestMapping("/type/{typeStr}/start/{startNum}/length/{lengthNum}")
	public ModelAndView handleRequest(HttpServletRequest request,
			HttpServletResponse response, @PathVariable String typeStr,
			@PathVariable String startNum, @PathVariable String lengthNum)
			throws Exception {
		String message = "[]";
		response.setHeader("Cache-Control", "no-cache");
		response.setContentType("text/json;charset=utf-8");
		int start = 0;
		int length = 0;
		ArrayList<Music> musicList = musicMap.get(typeStr);
		if (musicList == null) {
			return new ModelAndView("result", "message", message);
		}
		try {
			start = Integer.valueOf(startNum);
			length = Integer.valueOf(lengthNum);
		} catch (NumberFormatException e) {
			logger.warn("MusicController parse int failed.");
			e.printStackTrace();
			return new ModelAndView("result", "message", message);
		}
		if (start < 0 || start >= musicList.size() || length <= 0) {
			return new ModelAndView("result", "message", message);
		}
		int finish = Math.min(musicList.size(), start + length);
		List<Music> resultList = musicList.subList(start, finish);
		message = JSONArray.fromObject(resultList).toString();
		return new ModelAndView("result", "message", message);
	}