Cet article présente principalement la méthode détaillée de redirection de Java de l'arrière-plan vers un autre projet. Il est d'une grande valeur pratique. Les amis dans le besoin peuvent s'y référer
(1) Passer par ModelAndView
@RequestMapping("alipayforward") public ModelAndView alipayforward(HttpServletRequest req, HttpServletResponse resp) throws Exception { String contNo =req.getParameter("contNo"); logger.info("访问/downloadRequestElecCont.action"); String url = "redirect:http://baidu.com/downloadRequestElecCont.action?contNo="+contNo; return new ModelAndView(url); }
(2) Passer par HttpServletResponse
@RequestMapping("alipayforward/{contNo}") public void alipayforward(@PathVariable("contNo") String contNo, HttpServletRequest req, HttpServletResponse resp) throws Exception { //String contNo =req.getParameter("contNo"); //保单号 logger.info("访问/downloadRequestElecCont.action"); resp.sendRedirect("http://baidu.com/downloadRequestElecCont.action?contNo="+contNo); }
(3) Passer par la redirection pour renvoyer le type String Notez que cette méthode ne permet pas aux contrôleurs Spring d'être annotés avec @RestController car @ RestController l'est. équivalent à toutes les méthodes de la classe marquées avec @ResponseBody. Ces méthodes ne renverront pas une vue, mais un objet json. Dans ce cas, la chaîne sera imprimée sur la page sans sauter. Le contrôleur peut être annoté avec @Controller
@RequestMapping("alipayforward") public String alipayforward(@RequestParam("contNo") String contNo, HttpServletRequest req, HttpServletResponse resp) throws Exception { //String contNo =req.getParameter("contNo"); //保单号 logger.info("访问/downloadRequestElecCont.action"); return "redirect:http://baidu.com/downloadRequestElecCont.action?contNo="+contNo; }
Ce qui suit concerne le problème du passage des paramètres
Rediriger le passage des paramètres vers la méthode get S'il y a plus de paramètres. pour être transmis, ils peuvent être encapsulés dans une carte ou un autre projet dans modelMap
@RequestMapping(params = "action=alipayforward") public String alipayforward(Map modelMap){ modelMap.put("userName", "呵呵"); modelMap.put("password", "123456"); modelMap.put("age", "25"); return "redirect:http://localhost:8088/era/user/alipayforward4?modelMap="+modelMap; }
utilise un objet de classe d'entité pour recevoir
@RequestMapping("alipayforward4") public void alipayforward4(User user, HttpServletRequest req) throws Exception { System.out.println(user.getPassword()); String modelMap = req.getParameter("modelMap"); System.out.println(modelMap); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!