Spring MVC Controller

@Controllerbr/>@RequestMapping("/articlecontent")
public class ArticleContentController {

@Autowired
private TestService testService;

@Autowired
private ArticleContentService articleContentService;

private Logger logger=LoggerFactory.getLogger(ArticleContentController.class);

@RequestMapping(value="/articlecontentadd",method=RequestMethod.GET)
public String articleContentAdd(Model model) {
    model.addAttribute("appExtStr", testService.getAppExtStr());
    return "articlecontent/articlecontentadd";
}

@RequestMapping(value="/articlecontentdetail",method=RequestMethod.POST)
public void articleContentDetail(Model model,@RequestBody Map<String, Object> map, HttpServletRequest request,  HttpServletResponse response) {
    Map<String,Object> result = new HashMap<String,Object>();
    Map<String,Object> articleMap =articleContentService.getArticleContent(map).get(0);
    result.putAll(articleMap);
    MvcHelper.WriteResponseInfo(response,result, request.getCharacterEncoding());
}

@RequestMapping(value="/articlecontentadds",method=RequestMethod.POST)
public void articleContentAdds(Model model,@RequestBody Map<String, Object> map, HttpServletRequest request,  HttpServletResponse response) {
    Map<String,Object> result = new HashMap<String,Object>();
    map.put("Creater", "zhoujun");
    int number =articleContentService.insertArticleContent(map);
    if(number > 0) {
        result.put("rtnCnt", "1");
    }else {
        result.put("rtnCnt", "0");
    }
    MvcHelper.WriteResponseInfo(response,result, request.getCharacterEncoding());
}

@RequestMapping(value="/articlecontentlist",method=RequestMethod.POST)
public void articleContentList(Model model,@RequestBody Map<String, Object> map, HttpServletRequest request,  HttpServletResponse response) {
    Map<String,Object> result = new HashMap<String,Object>();
    Map<String, Object> pMap = MvcHelper.getPagerParams(map);
    int totalCnt =articleContentService.getArticleContentListCnt(pMap);
    int totalPage = MvcHelper.getTotalPage(pMap, totalCnt);
    result.put("listMap", articleContentService.getArticleContentList(pMap));
    result.put("totalCnt", totalCnt);
    result.put("totalPage", totalPage);
    MvcHelper.WriteResponseInfo(response,result, request.getCharacterEncoding());
}

}
public class MvcHelper {

public static void WriteResponseInfo(HttpServletResponse response,Object dataObj,String characterEncoding){
    ObjectMapper jacksonObjectMapper = new ObjectMapper();
       String jsonFormatMapResultString = null;
    try {
        jsonFormatMapResultString = jacksonObjectMapper.writeValueAsString(dataObj);
    } catch (JsonProcessingException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
       //response.setContentType(request.getContentType());
       response.setCharacterEncoding(characterEncoding);
       try {
        response.getWriter().print(jsonFormatMapResultString);
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

public static Map<String, Object> getPagerParams(Map<String, Object> map){
    int pageIndex =Integer.valueOf(String.valueOf(map.getOrDefault("PageIndex", "1")));
    int pageSize = Integer.valueOf(String.valueOf(map.getOrDefault("PageSize", "10")));
    int firstRowIndex = (pageIndex - 1) *pageSize + 1;
    int lastRowIndex = pageIndex * pageSize;
    map.put("firstRowIndex", firstRowIndex);
    map.put("lastRowIndex", lastRowIndex);
    return map;
}

public static int getTotalPage(Map<String, Object> map,int totalCnt) {
    int totalPage = 0;
    int pageSize = Integer.valueOf(String.valueOf(map.getOrDefault("PageSize", "10")));
    // this.TotalCnt % this.PageSize == 0 ? this.TotalCnt / this.PageSize : Math.ceil(this.TotalCnt / this.PageSize) ;
    totalPage = totalCnt % pageSize == 0 ? totalCnt/pageSize : (int)Math.ceil((double)totalCnt/pageSize);
    return totalPage;
}

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章