待完善
/**
* 原来写法
*
* @param request
* @param response
*/
@GetMapping(value = "/download")
public void download(HttpServletRequest request, HttpServletResponse response) {
// service层需要操作HttpServlet的时候还得需要在controller层这样获取。
// 业务逻辑XXXXX
request.getContextPath();
response.getHeaderNames();
testService.download(response);
}
/**
* 现在写法
*/
@GetMapping(value = "/upload")
public void upload() {
// 业务逻辑XXXXX
//两个方法在没有使用JSF的项目中是没有区别的
RequestAttributes requestAttributes = RequestContextHolder.currentRequestAttributes();
//从session里面获取对应的值
String str = (String) requestAttributes.getAttribute("name",RequestAttributes.SCOPE_SESSION);
HttpServletRequest request = ((ServletRequestAttributes)requestAttributes).getRequest();
HttpServletResponse response = ((ServletRequestAttributes)requestAttributes).getResponse();
request.getContextPath();
response.getHeaderNames();
// 获取request、response的方式可以在使用的地方写,不必要在这里再传进去
testService.download(response);
}