SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity

文章目录

    • # 示例
        • 客户端发送文档
  • 原理
    • # 在哪里
    • # 干什么
    • # 怎么用(实现 )
    • # 备忘


# 示例

客户端发送文档

@Slf4j
@RequestMapping("/test")
@Controller
public class TestController {


	@RequestMapping("/responseEntity")
	public ResponseEntity<byte[]> responseEntity(HttpSession session) throws IOException {
		//读文件
		byte[] body = null;
		ServletContext servletContext = session.getServletContext();
		InputStream in = servletContext.getResourceAsStream("/banner.txt") ;//servletContext.getRealPath("/banner.txt") ; 
		log.info(in.getClass().toString());
		body = new byte[in.available()] ;
		in.read(body) ; 
		//返回状态
		HttpStatus status = HttpStatus.OK ;
		//响应求头
		HttpHeaders headers = new HttpHeaders() ;
		headers.add("Content-Disposition", "attachment;filename=FileName.txt");
		ResponseEntity<byte[]> response = new ResponseEntity<byte[]>(body, headers, status) ; 
		return response ; 
	}
}

SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第1张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第2张图片


原理

# 在哪里

SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第3张图片
在这里插入图片描述

# 干什么

SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第4张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第5张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第6张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第7张图片

# 怎么用(实现 )

SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第8张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第9张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第10张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第11张图片


# 备忘

SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第12张图片
SpringMVC - 9 类型转换 - (服务端响应文件) - HttpMessageConverter、@ResponseBody、ResponseEntity_第13张图片

你可能感兴趣的:(#,spring-mvc)