项目用maven进行构建,具体代码及依赖如下:不懂得欢迎提问
需要的maven的pom文件如下:
com.itextpdf
itextpdf
5.5.10
com.itextpdf
itext-asian
5.2.0
empty/**
* pdf文件生成以及下载
* @param response
*/
@RequestMapping(value = "yanyan")
public void downLoadPDF(HttpServletResponse response){
String fileName = "企业基本情况登记表.pdf";
OutputStream outputStream = null;
try {
// 防止中文乱码
fileName = URLEncoder.encode(fileName, "UTF-8");
response.reset();
response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
response.setContentType("application/octet-stream;charset=UTF-8");
outputStream = new BufferedOutputStream(response.getOutputStream());
//生成pdf文件
TestModel.createBusinessInfoPDF(outputStream);
outputStream.flush();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
try {
if (outputStream != null) {
outputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
项目是springboot项目,controller的头部已加了RestController,故方法上面只加了RequestMapping注解,项目启动成功后,直接输入访问目录即可下载文件,下载的文件:
具体的伪代码已上传github:
https://github.com/daydayupyan/createPdfProject
生成pdf的代码都在service里面,util里面为封装的方法。