详解Java从后台重定向(redirect)到另一个项目的方法

网友投稿 741 2023-05-22


详解Java从后台重定向(redirect)到另一个项目的方法

(1)通过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://http://baidu.com/downloadRequestElecCont.action?contNo="+contNo;

return new ModelAndView(url);

}

(2)通过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)通过redirect返回String类型跳转,注意这种方法不允许Spring控制器用@RestController注解,因为@RestController相当于类中的所有方法都标注了@ResponseBody,这些方法不会返回一个视图,而是返回一个json对象,这样的话只是在页面上打印出字符串,而不跳转。控制器用@Controller注解即可

@RequestMapping("alipayforward")

public String alipayforward(@RequestParam("contNo") String contNo, HttpServletRequest req, HttpServletResponse resp) throws Exception {

//String contNo =req.getParameter("contNo"); //保单号

logger.info("访问/dhttp://ownloadRequestElecCont.action");

return "redirect:http://baidu.com/downloadRequestElecCont.action?contNo="+contNo;

}

下面是关于传参问题

重定向传参为get方式,如果传参数较多,可以封装到map或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;

}

另一个项目用实体类对象接收

@RequestMapping("alipayforward4")

public void alipayforward4(User user, HttpServletRequest req) throws ExcYxwEyjtEdUeption {

System.out.println(user.getPassword());

String modelMap = req.getParameter("modelMap");

System.out.println(modelMap);

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Cookies 和 Session的详解及区别
下一篇:数据库基本操作语法归纳总结
相关文章

 发表评论

暂时没有评论,来抢沙发吧~