SpringMVC学习笔记(三)-----Controller拦截3种类型的URL

来源:互联网 发布:p值计算软件 编辑:程序博客网 时间:2024/06/07 19:52

Controller

Controller负责处理URL和数据处理以及页面的返回。

第一种—–传统的URL

  // 传统样式  @RequestMapping(value = "/index", method = RequestMethod.GET)  // 本方法将处理/book/index?bookId=123  public String viewBook(@RequestParam("bookId") int bookId, Model model) {    log.info("In viewBook,bookId={}", bookId);    Book book = bookService.getBookbyId(bookId);    model.addAttribute(book);    return "detail";  }

第二种—–Restful样式的URL

  // RESTful样式的URL  // 本方法将处理/book/index2/{bookId}  @RequestMapping(value = "/index2/{bookId}", method = RequestMethod.GET)  public String viewBook2(@PathVariable("bookId") int bookId, Map<String, Object> model) {    log.info("In viewBook2,bookId={}", bookId);    Book book = bookService.getBookbyId(bookId);    model.put("book", book);    return "detail";  }

第三种—–HttpServletRequest方式

  // 传统的ServletRequest方式获取参数  // 本方法将处理/book/index3?bookId=456形式的URL  @RequestMapping(value = "index3")  public String viewBook(HttpServletRequest request) {    int bookId = Integer.valueOf(request.getParameter("bookId"));    log.info("In viewBook3,bookId={}", bookId);    Book book = bookService.getBookbyId(bookId);    request.setAttribute("book", book);    return "detail";  }