1.所需jar
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.12</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-pdfa</artifactId>
<version>5.5.0</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itext-asian</artifactId>
<version>5.2.0</version>
</dependency>
2.直接上代码
public void getpic(HttpServletRequest request, HttpServletResponse response,JsQdDzdmx jsQdDzdmx) throws IOException, DocumentException {
String fname = "grid";//导出文件名
fname = java.net.URLEncoder.encode(fname,"UTF-8");
response.setHeader("Content-Disposition","filename="+new String(fname.getBytes("UTF-8"),"UTF-8")+".xls");
response.setCharacterEncoding("utf-8");
// 由于导出格式是excel的文件,设置导出文件的响应头部信息
response.setContentType("application/pdf");
//设置中文
BaseFont bfChinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
Font FontChinese = new Font(bfChinese, 12, Font.NORMAL);
//3.创建Document对象
Document doc = new Document();
PdfWriter.getInstance(doc, response.getOutputStream());
//打开文档(必有这步)
doc.open();
//表标题
doc.addTitle("导出信息");
PdfPTable table = new PdfPTable(10);
//表头(FontChinese字体样式可加可不加)
table.addCell(new Paragraph("姓名",FontChinese));
table.addCell(new Paragraph("年龄",FontChinese));
table.addCell(new Paragraph("性别",FontChinese));
table.addCell(new Paragraph("爱好",FontChinese));
table.addCell(new Paragraph("体重",FontChinese));
table.addCell(new Paragraph("身高",FontChinese));
table.addCell(new Paragraph("籍贯",FontChinese));
table.addCell(new Paragraph("手机号",FontChinese));
table.addCell(new Paragraph("家庭住址",FontChinese));
table.addCell(new Paragraph("身份证号",FontChinese));
doc.add(table);
//获取数据
List<JsQdDzdmx> lists = jcdzdService.findjcdzdmx1(jsQdDzdmx);
for(JsQdDzdmx i : lists) {
PdfPTable tableS = new PdfPTable(10);
tableS.addCell(new Paragraph(i.getXmbh(),FontChinese));
tableS.addCell(new Paragraph(i.getBgbh1(),FontChinese));
tableS.addCell(new Paragraph(i.getWtrq(),FontChinese));
tableS.addCell(new Paragraph(i.getQfrq(),FontChinese));
tableS.addCell(new Paragraph(i.getXmmc(),FontChinese));
tableS.addCell(new Paragraph(i.getPz(),FontChinese));
tableS.addCell(new Paragraph(i.getQddj(),FontChinese));
tableS.addCell(new Paragraph(i.getGg(),FontChinese));
tableS.addCell(new Paragraph(i.getJcfy(),FontChinese));
tableS.addCell(new Paragraph(i.getFlag(),FontChinese));
doc.add(tableS);
}
//关闭文档
doc.close();
3.展示效果图