package Servlet;
import java.io.File;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperPrintManager;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.export.JRPdfExporter;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.j2ee.servlets.BaseHttpServlet;
import Service.PersonService;
public class JRHTMLServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
ServletContext context = this.getServletConfig().getServletContext();
File jasperFile = new File(context.getRealPath("jasper/preson.jasper"));
Map[] maps = new HashMap[1];
HashMap map = new HashMap();
Map<String, String> parameters = new HashMap<String, String>();
map.put("person_Id", "2009");
map.put("person_name", "汉科");
map.put("person_age", "23");
map.put("person_address", "武汉XX科技有限公司");
maps[0] = map;
JasperPrint jasperPrint = null;
List list2 = new ArrayList();
response.setCharacterEncoding("utf-8");
try {
JasperReport jasperReport = (JasperReport) JRLoader
.loadObject(jasperFile);
List<Map> list = new PersonService().getAllPerson();
for (Map s : list) {
List<Map> tempList = new ArrayList<Map>();
tempList.add(s);
JRDataSource dataSource = new JRBeanCollectionDataSource(
tempList);
jasperPrint = JasperFillManager.fillReport(jasperReport,
new HashMap(), dataSource);
list2.add(jasperPrint);
}
OutputStream ouputStream = response.getOutputStream();
response.setContentType("application/pdf");
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-Disposition", "inline; filename=\""
+ URLEncoder.encode("测试", "UTF-8") + ".pdf\"");
// 使用JRPdfExproter导出器导出pdf
JRPdfExporter exporter = new JRPdfExporter();
// 设置JasperPrintList
exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, list2);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM,
ouputStream);
exporter.exportReport();
// JasperPrintManager.printReport(jasperPrint,false);
} catch (JRException e) {
e.printStackTrace();
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
jasperTest.rar (34个子文件)
jasperTest
.settings
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.project.facet.core.xml 252B
org.eclipse.wst.common.component 468B
org.eclipse.wst.jsdt.ui.superType.container 49B
.jsdtscope 500B
com.genuitec.eclipse.ws.prefs 109B
org.eclipse.jdt.core.prefs 395B
src
Service
PersonService.java 602B
Servlet
JRHTMLServlet.java 3KB
.project 2KB
WebRoot
META-INF
MANIFEST.MF 36B
WEB-INF
web.xml 1KB
classes
Service
PersonService.class 1KB
Servlet
JRHTMLServlet.class 4KB
lib
commons-collections-3.2.1.jar 562KB
iTextAsian-2.1.jar 320KB
commons-digester-1.7.jar 137KB
commons-beanutils-1.8.3.jar 227KB
itext-2.1.7.jar 1.08MB
jasperreports-applet-5.0.0.jar 485KB
poi-3.7-20101029.jar 1.6MB
jcommon-1.0.0.jar 288KB
commons-logging-1.1.1.jar 59KB
jfreechart-1.0.3.jar 1.09MB
iTextAsianCmaps-2.1.jar 1.62MB
groovy-all-1.5.5.jar 2.71MB
jxl.jar 709KB
jasperreports-3.7.4.jar 2.88MB
index.jsp 834B
1.html 507B
jasper
report1234.jasper 27KB
preson.jasper 27KB
.mymetadata 303B
.classpath 529B
.myeclipse
共 34 条
- 1
资源评论
- nmamt2018-06-22很好,可以用。
yaoyaoyan5260
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功