由于中文的问题,所以还需要下载:itext-1.02b.jar和iTextAsian.jar包 
  在properties里需修改font为某种系统内的中文字体,PDF font name选择STSong_Light,选中PDF Embeded PDF Encoding为UniGB-UCS2-H(Chinese simplified)。并且将iTextAsian.jar加入到ireport的lib文件夹下,这样通过ireport产生的pdf文件就支持中文了。
  记得把itext-1.02b.jar跟iTextAsian.jar放到JBOSS的LIB下,不然找不到。 <%@ page contentType="text/html;charset=GB2312" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ page import="net.sf.jasperreports.engine.*" %> <%@ page import="java.util.*" %> <%@ page import="java.io.*" %> <%@ page import="java.sql.*" %> <html> <head>   <title>abc</title> </head> <body> <%  System.out.println("chenggong");
       File reportFile = new File(application.getRealPath("aall.jasper"));  System.out.println("chenggong");
         Map parameters = new HashMap();
         parameters.put("name", "p");
         
         Connection conn=null;       try       {           Class.forName("org.gjt.mm.mysql.Driver");           conn=DriverManager.getConnection("jdbc:mysql://localhost/music?useUnicode=true&characterEncoding=GB2312","root","c5757078");            System.out.println("chenggong");
        }       catch(Exception e)       {          System.out.println(e);       }        JasperRunManager run=new JasperRunManager();                              System.out.println("abc");        byte[] bytes = run.runReportToPdf(reportFile.getPath(), parameters, conn);             System.out.println("abc");        response.setContentType("application/pdf");
         response.setContentLength(bytes.length);
         ServletOutputStream ouputStream = response.getOutputStream();
         ouputStream.write(bytes, 0, bytes.length);
         ouputStream.flush();
         ouputStream.close();
  %>
  </body> </html>  
 
  |