Spring MVC返回pdf文件并在页面显示而不是下载
1、spring mvc下载pdf
@RequestMapping(value="/getpdf", method=RequestMethod.POST)
public ResponseEntity<byte[]> getPDF(@RequestBody String json) {
    // 读取pdf文件到字节里
    Path path = Paths.get("path/to/file");
    byte[] contents = Files.readAllBytes(path);
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.parseMediaType("application/pdf"));
    String filename = "output.pdf";
    headers.setContentDispositionFormData("attachment", filename);
    headers.setCacheControl("must-revalidate, post-check=0, pre-check=0");
    ResponseEntity<byte[]> response = new ResponseEntity<byte[]>(contents, headers, HttpStatus.OK);
    return response;
}
如果上面的代码变为下载,可以尝试
headers.setContentDispositionFormData("inline", fileName);
或
headers.add("content-disposition", "inline;filename=" + fileName)
浏览器会尝试把inline的内容显示在页面。
如果有中文乱码问题:
headers.setContentDispositionFormData("attachment", new String(filename.getBytes("utf-8"), "ISO8859-1"));