`
chengyu2099
  • 浏览: 459827 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

ireport3.7.2 jasperreport导出pdf,excel等

阅读更多
我用的是 ireport3.7.2,感觉界面什么的比起以前的版本有很大提升,画起来也很easy
1、添加数据源
Have you tried to add the xxxxx.jar in Tools
-> Options -> Classpath -> Add JAR?
2、画页面
3、写SQL
4、调用

public class JasperServlet 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 
	{
		/* PDF
		System.out.println("-----------------JasperServlet---------------------------");
		try {
			Connection con = null;
			con = new DBconnect().getConectionByJdbc();
			ServletContext servletContext =this.getServletContext();
			File reportFile = new File(servletContext.getRealPath("jasper/report2.jasper")); 
			String name= new String(request.getParameter("name").getBytes("iso8859-1"),"utf-8");
			System.out.println("num = "+ name);
			Map parameters = new HashMap();
			parameters.put("NAME",name); 
			
			byte[] bytes = 
			JasperRunManager.runReportToPdf(reportFile.getPath(),parameters,con); 
			
			response.setContentType("application/pdf"); 
			response.setContentLength(bytes.length); 
			ServletOutputStream ouputStream = response.getOutputStream(); 
			ouputStream.write(bytes, 0, bytes.length); 
			ouputStream.flush(); 
			ouputStream.close();
		} catch (Exception e) 
		{
			e.printStackTrace();
		} 

	*/
//		html
		Connection conn = null;
		try {
		    conn =new DBconnect().getConectionByJdbc();

		    ServletContext servletContext =this.getServletContext();
			File reportFile = new File(servletContext.getRealPath("jasper/report2.jasper")); 
		    JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());
		    //null为无参数传入
		    String name= new String(request.getParameter("name").getBytes("iso8859-1"),"utf-8");
			System.out.println("num = "+ name);
			Map parameters = new HashMap();
			parameters.put("NAME",name); 
		    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, conn);

		   JRHtmlExporter exporter = new JRHtmlExporter();
		   StringBuffer sbuffer = new StringBuffer();

		   request.getSession().setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE, jasperPrint);

		   exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
		   PrintWriter out = response.getWriter();
		   exporter.setParameter(JRExporterParameter.OUTPUT_WRITER,out);
		   exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, "../servlets/image?image=");

		   exporter.exportReport();
		   
//		   request.getRequestDispatcher("test.jsp").forward(request,response);

		} catch (Exception e) {
		    e.printStackTrace();
		} finally {
			try {
				conn.close();
			} catch (SQLException e) {
				
				e.printStackTrace();
				
			}
		}
	}

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics