1. 程式人生 > 程式設計 >Springboot轉發重定向實現方式解析

Springboot轉發重定向實現方式解析

1、轉發

方式一:使用 "forword" 關鍵字(不是指java關鍵字),注意:類的註解不能使用@RestController 要用@Controller

@RequestMapping(value="/test/test01/{name}",method = RequestMethod.GET)
public String test(@PathVariable String name) {
  return "forword:/ceng/hello.html";
}

方式二:使用servlet 提供的API,注意:類的註解可以使用@RestController,也可以使用@Controller

@RequestMapping(value="/test/test01/{name}",method = RequestMethod.GET)
public void test(@PathVariable String name,HttpServletRequest request,HttpServletResponse response) throws Exception {
  request.getRequestDispatcher("/ceng/hello.html").forward(request,response);
}

2、重定向

方式一:使用 "redirect" 關鍵字(不是指java關鍵字),注意:類的註解不能使用@RestController,要用@Controller

@RequestMapping(value="/test/test01/{name}",method = RequestMethod.GET)
public String test(@PathVariable String name) {
  return "redirect:/ceng/hello.html";
}

方式二:使用servlet 提供的API,注意:類的註解可以使用@RestController,也可以使用@Controller

@RequestMapping(value="/test/test01/{name}",HttpServletResponse response) throws IOException {
  response.sendRedirect("/ceng/hello.html");
}

使用API進行重定向時,一般會在url之前加上:request.getContextPath()

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。