@RequestMapping("/catShow.do")
	public ModelAndView showCatList(Device device, HttpServletRequest req) throws Exception {
		int rows = 16;
		int pageBlock = 10;
		// 카테고리 코드를 알아오기 위한 변수
		String catVal = req.getParameter("catVal");
		// xml에 카테고리명을 추가 하기 위한 변수
		String realmCode = null;
		String path = "catShow.do";
		String pageCode;
		String cPage = req.getParameter("cPage");
		ModelAndView mav = new ModelAndView();

		if (cPage == null)
			cPage = "1";

		// 카테고리 코드가 있으면 session에 카테고리 코드를 심음(다른 페이지 요청시 카테고리 코드를 계속 유지하기 위함)
		if (catVal != null) {
			req.getSession().setAttribute("catVal", catVal);
		}

		// 카테고리 코드가 session에 있으면(카테고리 별로 출력하여 다른 페이지가 요청되면) xml에 카테고리명을 추가 하기 위해
		// encoding 함 : 한글 처리를 위한
		if (req.getSession().getAttribute("catVal") != null) {
			catVal = (String) req.getSession().getAttribute("catVal");
			realmCode = "&realmCode=" + URLEncoder.encode(catVal, "utf-8");
		}

		// 카테고리에 따른 공연 List를 가져오는 메소드
		List<PerforListVO> perForList = showService.showCatList(rows, cPage,realmCode);

		page.setPageInit(Integer.parseInt(cPage), showService.getCatCount(catVal), rows, pageBlock, path);
		pageCode = page.getSb().toString();

		mav.addObject("perForList", perForList);
		mav.addObject("pageCode", pageCode);
		mav.addObject("cPage", cPage);

		

		String pc="basic";
		if(req.getParameter("pc")!=null)
			pc = req.getParameter("pc");
		if (device.isMobile()) {
			logger.info("catShow  mobile");
			if(pc.equals("pc")){
				mav.setViewName("showList");
			}
			else{
				logger.info("isPCVersion");
				mav.setViewName("m.showList");
			}
		} else {
			logger.info("catShow  desktop");
			mav.setViewName("showList");
		//	mav.setViewName("m.showList");
		}
		
		return mav;
	}