首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将JasperViewer与基于Swing的应用程序集成

如何将JasperViewer与基于Swing的应用程序集成
EN

Stack Overflow用户
提问于 2010-03-29 15:09:41
回答 2查看 1.1K关注 0票数 0

我是否可以将JasperReports查看器集成到我的Swing应用程序中,就像我单击应用程序中的查看报告按钮,然后打开查看器一样。如果是这样,你可以建议我与此集成的代码片段,并在此查看器的另存为类型应限制为PDF,而不是所有其他可用的下载选项过滤器。

请在这方面给我一些建议。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-29 16:11:20

是的,Jasper报表提供了一个可用的(虽然简单)报表查看器:

代码语言:javascript
复制
...
           JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
           JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport...);
           JasperViewer.viewReport(jasperPrint);
...

最后一行是显示查看器的内容。不过,我不确定您是否可以将可用的输出格式限制为PDF。

票数 2
EN

Stack Overflow用户

发布于 2013-08-13 03:46:37

让我们假设报告包含报告文件(*.jrxml)的名称。此程序将使用mysql数据库中的数据填充报告。我希望这能解决你的问题。

代码语言:javascript
复制
public void generate(String report) { // report will contain the name of your file
    try {
        InputStream design = getClass().getResourceAsStream(report);
        JasperDesign jasperdesing = JRXmlLoader.load(design);
        JasperReport jasperReport = JasperCompileManager.compileReport(jasperdesing);
        Connection con = ConnectDB.connect();// connect function in ConnectDB calss is used to connect to the database
        JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, con);
        JasperViewer.viewReport(jasperPrint, false);
    } catch (Exception e) {
        System.out.println("Exception " + e);
    }

}
public class ConnectDB {
public static Connection con = null;
public static Connection connect(){
    try{
        Class.forName("com.mysql.jdbc.Driver");
        con = DriverManager.getConnection("jdbc:mysql:///dbname","username","password");
    }catch(Exception e){
        System.out.println();
    }
    return con;
}

}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2536281

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档