package com.sterning;
import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporter;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.util.JRLoader;
import net.sf.jasperreports.view.JasperViewer;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class JasperAction extends ActionSupport {
//private static final long serialVersionUID = 1L;
//private List<PeopleBean> myList;
public String execute() throws Exception {
System.out.println("main.......1111111");
Connection conn = null;
try {
//DB Connection
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:ORCL",
"db31",
"embed" );
String curDir = System.getProperty("user.dir");
String dir = curDir+"\\src\\jasper\\";
String reportId = "Procedures";
System.out.println("main.......222222");
JasperCompileManager.compileReportToFile(dir+reportId + ".jrxml",dir+reportId + ".jasper");
JasperReport jasperReport = (JasperReport) JRLoader.loadObject(dir+reportId + ".jasper");
System.out.println("main.......333333");
Map map = new HashMap();
map.put("Facility", "Technology");
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, conn);
System.out.println("main.......444444");
exportReport(dir+reportId ,"xls",jasperPrint);
JasperViewer jrview = new JasperViewer(jasperPrint,false);
jrview.setVisible(true);
conn.close();
System.out.println("main.......555555");
} catch (Exception e) {
if(conn != null){
try {
conn.close();
} catch (SQLException e1) {}
}
e.printStackTrace();
}
return SUCCESS;
}
/**
* @throws JRException
*/
private static void exportReport(String fileName, String format,JasperPrint print) throws JRException {
System.out.println("main.......666666");
JRExporter exporter = null;
if (format.equalsIgnoreCase("pdf"))
{
System.out.println("main.......777777");
exporter = new net.sf.jasperreports.engine.export.JRPdfExporter();
fileName = fileName+".pdf";
}
else if (format.equalsIgnoreCase("csv"))
{
exporter = new net.sf.jasperreports.engine.export.JRCsvExporter();
fileName = fileName+".csv";
}
else if (format.equalsIgnoreCase("html"))
{
exporter = new net.sf.jasperreports.engine.export.JRHtmlExporter();
fileName = fileName+".html";
}
else if (format.equalsIgnoreCase("xls") || format.equalsIgnoreCase("xls2"))
{
if (format.equalsIgnoreCase("xls"))
{
exporter = new net.sf.jasperreports.engine.export.JRXlsExporter();
}
else
{
exporter = new net.sf.jasperreports.engine.export.JExcelApiExporter();
}
fileName = fileName+".xls";
}
else if (format.equalsIgnoreCase("odt"))
{
exporter = new net.sf.jasperreports.engine.export.oasis.JROdtExporter();
fileName = fileName+".odt";
}
if (exporter != null)
{
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,fileName);
exporter.setParameter(JRExporterParameter.JASPER_PRINT,print);
exporter.exportReport();
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
jasper的一个小例子
共56个文件
jar:31个
jrxml:6个
xml:3个
4星 · 超过85%的资源 需积分: 10 14 下载量 53 浏览量
2009-10-15
17:36:22
上传
评论 1
收藏 14.89MB RAR 举报
温馨提示
jasper的一个小例子,可能对刚开始学习jasper的朋友又一些帮助。。
资源推荐
资源详情
资源评论
收起资源包目录
jasper.rar (56个子文件)
jasper
.project 1KB
.settings
org.eclipse.core.resources.prefs 157B
.mymetadata 291B
WebRoot
WEB-INF
web.xml 816B
lib
struts2-jasperreports-plugin-2.0.14.jar 16KB
servlet.jar 40KB
struts-mailreader-dao-1.3.5.jar 20KB
jxl-2.6.jar 645KB
iText-2.1.0.jar 1MB
commons-collections-2.1.jar 161KB
xml-apis-1.0.b2.jar 107KB
saaj-api-1.3.jar 18KB
jcommon-1.0.15.jar 302KB
log4j-1.2.15.jar 383KB
ognl-2.6.11.jar 164KB
commons-logging-1.0.4.jar 37KB
jfreechart-1.0.12.jar 1.31MB
commons-javaflow-20060411.jar 94KB
ant-1.5.1.jar 701KB
xwork-2.0.7.jar 449KB
ojdbc14.jar 1.47MB
xml-apis.jar 190KB
poi-3.2-FINAL-20081019.jar 1.36MB
jasperreports-3.1.3.jar 2.13MB
freemarker-2.3.8.jar 784KB
jdt-compiler-3.1.1.jar 1.16MB
jakarta-bcel-20050813.jar 521KB
struts2-core-2.0.14.jar 2.22MB
bsh-2.0b4.jar 275KB
commons-digester-1.7.jar 137KB
antlr-2.7.5.jar 425KB
commons-beanutils-1.7.jar 184KB
jpa.jar 47KB
png-encoder-1.5.jar 10KB
jaxen-1.1.1.jar 222KB
classes
com
sterning
JasperAction.class 5KB
PeopleBean.class 1KB
struts.xml 2KB
jasper
Procedures.xls 0B
jasper_template.jrxml 12KB
Procedures.jrxml 7KB
Procedures.jasper 19KB
index.jsp 414B
META-INF
MANIFEST.MF 39B
images
px 807B
jasper
jasper_template.jrxml 12KB
Procedures.jrxml 7KB
Procedures.jasper 19KB
.myeclipse
src
com
sterning
PeopleBean.java 612B
JasperAction.java 4KB
struts.xml 2KB
jasper
Procedures.xls 0B
jasper_template.jrxml 12KB
Procedures.jrxml 7KB
Procedures.jasper 19KB
.classpath 3KB
共 56 条
- 1
资源评论
- jialin19872012-07-11我之前生成pdf一直报错,看了这个例子发现是少了jar包,但是个人觉得再精辟的代码没有注释也是垃圾代码.
- a1242104752012-05-20我之前完全没有接触过咯。。纯代码,没有多余的文档介绍,可能不是特别适合初学的人
tianyouli464434
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功