資源簡介
通過iReport根據自己的需要生成所需模板
通過JAVA代碼將已生成的模板生成為PDF
該示例以mysql數據庫為例
通過JAVA代碼將已生成的模板生成為PDF
該示例以mysql數據庫為例
代碼片段和文件信息
package?com.demo;
import?java.io.File;
import?java.sql.Connection;
import?java.sql.Driver;
import?java.util.HashMap;
import?java.util.List;
import?java.util.Map;
import?java.util.Properties;
import?java.util.ResourceBundle;
import?javax.servlet.http.HttpServletRequest;
import?net.sf.jasperreports.engine.JasperRunManager;
/**
?*?iReport工具類
?*?@author?wangfei
?*
?*/
public?class?IreportUtil?{
/**
?*?生成PDF方法
?*?@param?request
?*?@param?userid?主鍵?用途:模板中的sql傳參
?*?@throws?Exception
?*/
public?static?void?saveNodeBookPathNew(String?userid)?throws?Exception{
Connection?connection?=?getConnection();
try?{
//1.通過iReport工具獲得jasper模板
String?jasperpath?=?“D:\\MyEclipse\\workspace\\ireportdemo\\WebRoot\\WEB-INF\\jasper\\user.jasper“;
//2.生成目標文件PDF的路徑
String?distfilepath?=?“D:\\MyEclipse\\workspace\\ireportdemo\\WebRoot\\pdf\\user.pdf“;
File?reportFile?=?new?File(jasperpath);
Mapject>?parameters?=?new?HashMapject>();
parameters.put(“id“?userid);
File?f?=?new?File(distfilepath);
File?pf?=?f.getParentFile();
if(!pf.exists()){
pf.mkdirs();
}
//3.根據模板生成PDF
JasperRunManager.runReportToPdfFile(reportFile.getPath()?distfilepath?parameters?connection);
}?catch?(Exception?e)?{
e.printStackTrace();
}finally{
connection.close();
}
System.out.println(“結束“);
}
/**
?*?獲取數據庫鏈接
?*?這里以mysql為例
?*?@return
?*?@throws?Exception?
?*?@throws?IllegalAccessException?
?*?@throws?InstantiationException?
?*/
public?static?Connection?getConnection()?throws?Exception?{
String?driverName?=?“com.mysql.jdbc.Driver“;
String?url?=?“jdbc:mysql://127.0.0.1:3306/ireportdemo“;
String?user?=?“root“;
String?password?=?“root“;
Driver?driver?=?(Driver)?Class.forName(driverName).newInstance();
Properties?info?=?new?Properties();?//?driver的connect方法中需要一個Properties型的參數
info.put(“user“?user);
info.put(“password“?password);
Connection?conn?=?driver.connect(url?info);
return?conn;
}
public?static?void?main(String[]?args)?throws?Exception?{
saveNodeBookPathNew(“1“);
}
//
//1.模板生成??入參??出參??sql?
//2.中文不顯示(全選)
// 已經對自己設計的報表統一設置了pdf的字體格式。配置如下:
// Font?name:?宋體?
// Pdf?Font?name:?STSong-Light?
// Pdf?embeded:?true?(打鉤)?
// Pdf?Encoding:?UniGB-UCS2-H(Chinese?Siplified)?
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-01-09?13:31??ireportdemo\
?????文件????????1274??2020-01-09?14:40??ireportdemo\.classpath
?????目錄???????????0??2020-01-09?13:31??ireportdemo\.myeclipse\
?????文件?????????306??2020-01-09?13:31??ireportdemo\.myme
?????文件????????1538??2020-01-09?13:31??ireportdemo\.project
?????目錄???????????0??2020-01-09?13:31??ireportdemo\.settings\
?????文件?????????500??2020-01-09?13:31??ireportdemo\.settings\.jsdtscope
?????文件?????????364??2020-01-09?13:31??ireportdemo\.settings\org.eclipse.jdt.core.prefs
?????文件?????????471??2020-01-09?13:31??ireportdemo\.settings\org.eclipse.wst.common.component
?????文件?????????252??2020-01-09?13:31??ireportdemo\.settings\org.eclipse.wst.common.project.facet.core.xm
?????文件??????????49??2020-01-09?13:31??ireportdemo\.settings\org.eclipse.wst.jsdt.ui.superType.container
?????文件???????????6??2020-01-09?13:31??ireportdemo\.settings\org.eclipse.wst.jsdt.ui.superType.name
?????目錄???????????0??2020-01-09?13:31??ireportdemo\src\
?????目錄???????????0??2020-01-09?13:31??ireportdemo\src\com\
?????目錄???????????0??2020-01-09?13:32??ireportdemo\src\com\demo\
?????文件????????2613??2020-01-09?16:37??ireportdemo\src\com\demo\IreportUtil.java
?????目錄???????????0??2020-01-09?14:30??ireportdemo\WebRoot\
?????文件?????????834??2020-01-09?13:31??ireportdemo\WebRoot\index.jsp
?????目錄???????????0??2020-01-09?13:31??ireportdemo\WebRoot\me
?????文件??????????36??2020-01-09?13:31??ireportdemo\WebRoot\me
?????目錄???????????0??2020-01-09?15:03??ireportdemo\WebRoot\pdf\
?????文件????????7074??2020-01-09?16:35??ireportdemo\WebRoot\pdf\user.pdf
?????目錄???????????0??2020-01-09?13:50??ireportdemo\WebRoot\WEB-INF\
?????目錄???????????0??2020-01-09?14:40??ireportdemo\WebRoot\WEB-INF\classes\
?????目錄???????????0??2020-01-09?14:40??ireportdemo\WebRoot\WEB-INF\classes\com\
?????目錄???????????0??2020-01-09?14:40??ireportdemo\WebRoot\WEB-INF\classes\com\demo\
?????文件????????2689??2020-01-09?16:37??ireportdemo\WebRoot\WEB-INF\classes\com\demo\IreportUtil.class
?????目錄???????????0??2020-01-09?16:34??ireportdemo\WebRoot\WEB-INF\jasper\
?????文件???????36142??2020-01-09?16:34??ireportdemo\WebRoot\WEB-INF\jasper\user.jasper
?????文件????????4519??2020-01-09?16:34??ireportdemo\WebRoot\WEB-INF\jasper\user.jrxm
?????目錄???????????0??2020-01-09?14:40??ireportdemo\WebRoot\WEB-INF\lib\
............此處省略10個文件信息
評論
共有 條評論