如何在ModelAndView中使用Redirect

时间:2017-03-28 20:25:24

标签: java spring jsp spring-mvc

我想将我的网址重定向到http://localhost:8080/ClickBuy/product/detailshttp://localhost:8080/ClickBuy/home

我已经定义了header.jsp并将其包含在我的所有Pages中。当我从其他任何地方点击主页链接时,从当前url添加/ home。所以它显示404错误。

控制器

public ModelAndView allProduct()
{   
ModelAndView model=new ModelAndView("pl");
model.addObject("data", pd.getAllProducts());
return model;
}

如何在ModelAndView中使用redirect:/返回类型方法???

2 个答案:

答案 0 :(得分:4)

要在ModelAndView返回类型方法中使用重定向:/,请尝试按照

ModelAndView modelAndView =  new ModelAndView("redirect:/abc.htm");
modelAndView.addObject("modelAttribute" , new ModelAttribute());
return modelAndView;

如果您不需要主页中的任何模型

,您还可以使用String returntype返回主页
@RequestMapping(value = "/home.htm", method = RequestMethod.GET)
   public String homePage() {
      return "home";
   }

答案 1 :(得分:2)

有不同的重定向方法,但使用Spring ModelView Object很简单

Route::bind('category_slug', function ($category_slug, $route) {dd('category_slug') }); //works

Route::bind('article_slug', function ($article_slug, $route) { dd('article_slug') }); //works for both article_slug(ok!) and subcategory_slug(wrong!)

Route::bind('subcategory_slug', function ($subcategory_slug, $route) { dd('subcategory_slug') }); //not works