重定向和转发
重定向(redirect):
浏览器URL会改变,request无法共享,参数不能传递
package com.xieli.liu.controller;
import com.xieli.liu.pojo.UserInfo;
import com.xieli.liu.service.UserInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* Created by Administrator on 2019-11-27.
*/
@Controller
public class UserInfoController {
@Autowired
UserInfoService userInfoService;
@RequestMapping(value = "/queryuser")
public String queryuserss(HttpServletRequest request) throws Exception {
String name = request.getParameter("name");
System.out.println(name);
return "redirect: queryuser2.action";
}
@RequestMapping("/queryuser2")
public ModelAndView queryuserss2(HttpServletRequest request) throws Exception {
String name = request.getParameter("name");
System.out.println(name+".............");
UserInfo userInfo = new UserInfo();
userInfo.setUserName(name);
List<UserInfo> userInfos = userInfoService.selectUserList(userInfo);
ModelAndView mv = new ModelAndView("WEB-INF/jsp/usermasseger.jsp");
mv.addObject("userInfo",userInfos.get(0));
return mv;
}
}
只打印出来第一request中的值
页面URL改变
转发(forward):
浏览器URL不会改变,request共享,参数可以传递
package com.xieli.liu.controller;
import com.xieli.liu.pojo.UserInfo;
import com.xieli.liu.service.UserInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* Created by Administrator on 2019-11-27.
*/
@Controller
public class UserInfoController {
@Autowired
UserInfoService userInfoService;
@RequestMapping(value = "/queryuser")
public String queryuserss(HttpServletRequest request) throws Exception {
String name = request.getParameter("name");
System.out.println(name);
return "forward: queryuser2.action";
}
@RequestMapping("/queryuser2")
public ModelAndView queryuserss2(HttpServletRequest request) throws Exception {
String name = request.getParameter("name");
System.out.println(name+".............");
UserInfo userInfo = new UserInfo();
userInfo.setUserName(name);
List<UserInfo> userInfos = userInfoService.selectUserList(userInfo);
ModelAndView mv = new ModelAndView("WEB-INF/jsp/usermasseger.jsp");
mv.addObject("userInfo",userInfos.get(0));
return mv;
}
}
两个request都打印出了相同的值
页面URL地址没有改变