1. 第一种返回ModelAndView
在方法结束时定义ModelAndView类,在调用其addObject方法进行参数的设置,调用setViewName方法,定义跳转视图名
String name="大湿胸";
ModelAndView modelAndView=new ModelAndView();
modelAndView.addObject("name",name);
modelAndView.setViewname("showName");
return modelAndView;
2. 第二种返回String
1.表示返回逻辑视图名
真正视图(jsp路径)=前缀+逻辑视图名+后缀
return "showName";
2.redirect重定向
redirect重定向特点:浏览器地址栏中的url会变化。修改提交的request数据无法传到重定向的地址。因为重定向后重新进行request(request无法共享)
return "redirect:showName.action";
3.forward转发
forward重定向特点:通过forward进行页面转发,浏览器地址栏url不变,request可以共享。
return "forward:showName.action";
3.第三种返回void
在controller方法形参上可以定义request和response,使用request或response指定响应结果:
1、使用request转向页面,如下:
request.getRequestDispatcher("页面路径").forward(request, response);
2、也可以通过response页面重定向:
response.sendRedirect("url")
3、也可以通过response指定响应结果,例如响应json数据如下:
response.setCharacterEncoding("utf-8");
response.setContentType("application/json;charset=utf-8");
response.getWriter().write("json串");