`
gjl2008yn
  • 浏览: 14542 次
  • 性别: Icon_minigender_1
  • 来自: 云南昆明
文章分类
社区版块
存档分类
最新评论

在netBeans下实现报表功能

    博客分类:
  • Java
阅读更多

  最近一个项目中要求报表打印功能,而在Java中一直没有找到合适的报表设计工具。到网上找了好久, 8) 终于被我找到了——就是iReport,它是基于JasperReports的报表设计工具。
  我下载的是它的netbeans插件版,安装和使用起来都非常方便。那么我在这里谈一下的它的下载、安装到使用。

  1 下载:请点击这个链接下载:http://sourceforge.net/project/showfiles.php?group_id=64348&package_id=263429
  在下载这个插件之前,你还需要下载netbeans 6.0.1或 6.1 版可以到http://www.netbeans.org网站上去下载。
  2 安装:看下面的图解。
  下载完成后,先安装netbeans,启动netbeans,选择“工具-插件-已下载-添加插件”如下图:

 

选择你下好的“iReport-nb-0.9.1.nbm”插件,然后点击“安装”这样插件就可以安装了。

3 安装之后,我们先设计一个报表。

先使用“服务”创建一个数据库连接:

添加驱动(右键,新建驱动程序),如果你使用的是SQL SERVER数据库请到这里下载驱动:

在“数据库”上“右键”点击“新建连接...”选择你下载并解压后的驱动程序包“sqljdbc.jar”,然后再创建连接:

 

设置连接信息,这是连接SQL SERVER 2005 或 2000的设置:

如果添加成功,在“服务——数据库”下会出现下列的连接(可以点击右键选择“连接...”,使它连接到数据库):

 

4 报表数据库源添加,在工具栏上点击这个按钮:



 

 

会出现

这时点击“new”,选择“NetBeans Database JDBC connection”

选择你新建的连接,输入一个“Name”如图:

5 制作报表。

在netbeans中新建一个普通的Java项目(“文件——新建项目...”):

新建项目后,再新建一个报表文件(“文件——新建文件...”):

 

在后面的向导中选择文件存放的位置,再选择相应的数据库源,之后(编写查询或使用“Design Query”设置一个查询):

再选择报表中要使用的列:

选择分组字段:

  

“下一步”选择风格:

“下一步——完成”形成报表,点击“Preview”预览效果:

6 在应用程序中使用你的报表。

为你的应用程序添加“库”:

 

选择库:

 

编写代码测试:

请新建一个类或使用项目的“Main”类编写如下代码,让你的应用程序使用你刚刚设计的报表:

package testireport;

import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.HashMap;
import net.sf.jasperreports.engine.JRResultSetDataSource;
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.view.JasperViewer;

/**
 *
 * @author GuoJun-ling
 */
public class NewClass {

    public static void main(String[] args) {
        JasperReport jasperReport;
        JasperPrint jasperPrint;
        try {
            InputStream inReport = NewClass.class.getResourceAsStream("report1.jrxml");
            
            jasperReport = JasperCompileManager.compileReport(inReport);
            // 建立连接
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            String strUrl = "jdbc:sqlserver://localhost:1433;DatabaseName=pubs";
            Connection con = DriverManager.getConnection(strUrl, "sa", "sa");
            Statement stmt = con.createStatement();


            // 在使用iReport设计了报表之后可以使用连接对象直接填充报表。
            jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(), con);
            // 打印预览
            JasperViewer.viewReport(jasperPrint);
            // 关闭资源
            //rs.close();
            stmt.close();
            con.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

 

 

  • TestIreport.rar (16.8 KB)
  • 描述: 这是示例项目,使用netbeans打印项目目录,即可以使用。
  • 下载次数: 141
6
1
分享到:
评论
5 楼 hyx26 2010-06-03  
用你那个样例,结果在
InputStream inReport = NewClass.class.getResourceAsStream("report1.jrxml");
出错!

init:
deps-jar:
Compiling 1 source file to D:\My Documents\NetBeansProjects\TestIreport\build\classes
compile-single:
null
Exception in thread "main" java.lang.NoClassDefFoundError: org/springframework/core/io/Resource
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
        at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
        at net.sf.jasperreports.engine.util.ClassUtils.instantiateClass(ClassUtils.java:53)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.instantiateRegistry(DefaultExtensionsRegistry.java:236)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:213)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:162)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getRegistries(DefaultExtensionsRegistry.java:132)
        at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:104)
        at net.sf.jasperreports.engine.component.ComponentsEnvironment.findComponentBundles(ComponentsEnvironment.java:90)
        at net.sf.jasperreports.engine.component.ComponentsEnvironment.getCachedComponentBundles(ComponentsEnvironment.java:78)
        at net.sf.jasperreports.engine.component.ComponentsEnvironment.getComponentBundles(ComponentsEnvironment.java:66)
        at net.sf.jasperreports.engine.xml.JRReportSaxParserFactory.getSchemaLocations(JRReportSaxParserFactory.java:157)
        at net.sf.jasperreports.engine.xml.JRReportSaxParserFactory.configureParser(JRReportSaxParserFactory.java:138)
        at net.sf.jasperreports.engine.xml.JRReportSaxParserFactory.createParser(JRReportSaxParserFactory.java:103)
        at net.sf.jasperreports.engine.xml.JRXmlDigesterFactory.createParser(JRXmlDigesterFactory.java:1332)
        at net.sf.jasperreports.engine.xml.JRXmlDigesterFactory.createDigester(JRXmlDigesterFactory.java:1307)
        at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:205)
        at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:199)
        at testireport.NewClass.main(NewClass.java:33)
Caused by: java.lang.ClassNotFoundException: org.springframework.core.io.Resource
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        ... 21 more
Java Result: 1
4 楼 zhweis123 2010-05-09  
选择风格点击完成后就没没  “Preview” 预览效果了啊



3 楼 crazymartin 2009-12-18  
很好,很受用,非常灵活的一个插件
2 楼 turionboy 2009-06-14  
我用NB6.5装上设计器好像不管用呀,预览里也就一个txt项目,是不是插件不兼容
1 楼 hw_alex 2008-04-25  
用这个插件的确很方便啊

相关推荐

    netbeans 下java开源报表

    本篇文章将深入探讨如何在NetBeans环境下利用Java开源库创建各种报表,特别关注JFreeChart库,它是Java报表开发中的一个重要组件。 首先,`jfreechart-1.0.13`是JFreeChart库的一个版本,这是一个强大的Java库,...

    学生信息系统 java基于netbeans 课程设计

    综上所述,这个“学生信息系统 java基于netbeans 课程设计”是一个集成了数据管理核心功能的桌面应用,其目标是通过NetBeans IDE实现一套完整的、用户友好的学生信息管理系统。这个系统不仅锻炼了开发者在Java编程和...

    netbeans图书管理系统

    总结来说,“NetBeans图书管理系统”是一个利用NetBeans的强大开发工具和Java编程语言实现的高效图书管理应用,它集成了图书信息管理、读者服务、库存控制和数据分析等功能,为图书馆的日常运营提供强大支持。...

    Netbeans学生管理系统

    该系统利用Java的面向对象特性、稳定性和跨平台兼容性,确保在不同操作系统环境下都能稳定运行。NetBeans作为开发环境,提供了丰富的集成开发工具和库支持,使得开发者能高效地构建应用程序。 系统的核心功能可能...

    基于netbeans的员工工资管理系统

    【基于NetBeans的员工工资管理系统】是一个利用Java的集成开发环境——NetBeans 6.5进行构建的应用程序,主要用于管理企业内部的员工...无论是数据处理、界面设计还是功能实现,都体现了现代软件工程的理念和技术实践。

    Examples_java_netbeans_print_

    这些示例可以帮助开发者理解和学习如何在实际项目中利用Java和NetBeans来实现打印功能。 总的来说,这个压缩包中的内容可能涵盖了以下知识点: 1. Java打印API的基本概念和用法。 2. 如何在NetBeans IDE中创建和...

    简单的图书管理系统(Netbeans)

    Netbeans提供了丰富的代码提示、自动完成和调试功能,使得开发过程更加高效和便捷。 数据库方面,系统采用了Access2003,这是微软公司推出的轻量级数据库管理系统,适用于小型数据存储和管理需求。在图书管理系统中...

    Netbeans数据库资料1

    3. **数据绑定**:在NetBeans的Swing GUI Builder中,可以方便地将Access数据库的字段绑定到GUI组件上,实现数据的实时显示和更新。 三、数据库实例程序 NetBeans提供的实例程序涵盖了各种数据库操作,例如: 1. ...

    iReport3.7开发Web报表

    这款工具在IReport3.7.2版本中进行了重大改进,采用了Netbeans框架,提供了更为友好的用户界面和更强大的功能。 1. **下载IReport** 要开始使用IReport,首先需要从官方网站下载最新的IReport3.7.2版本。这是一个...

    Java Swing中应用快逸报表示例Demo

    `test`目录通常包含单元测试代码,这里可能是对报表功能的验证和测试,通过JUnit或其他测试框架来确保报表的正确性和性能。 `dist`目录是部署输出的目录,里面可能包含编译后的JAR文件或者其他形式的可执行文件,...

    图书销售管理系统NetBeans (数据库设计)

    【图书销售管理系统NetBeans(数据库...总之,图书销售管理系统NetBeans是结合了数据库设计和Java开发的一款实用软件,它通过精心设计的数据库结构和直观的用户界面,实现了对图书销售业务的有效管理,提高了工作效率。

    【Netbeans 5 project】音像管理系统

    【Netbeans 5项目】音像管理系统是一款基于Java开发的软件应用,利用了NetBeans集成开发环境(IDE)的强大功能,旨在实现对音像资源的高效管理。该系统设计的目标是提供一个用户友好的界面,方便用户进行音像资料的...

    基于NetBeans开发的4S店管理系统

    在本项目中,NetBeans作为开发平台,为4S店管理系统提供了友好的用户界面设计和代码编写环境。开发者可以利用其强大的拖放功能快速构建GUI(图形用户界面),同时利用内置的代码补全和错误检查功能提高开发效率。 ...

    JAVA 可视化报表资源,快速入门

    - **NetBeans**: NetBeans IDE内建了报表设计功能,可以直接在IDE中创建和编辑报表。 - **Jaspersoft Studio**: Jaspersoft Studio是JasperReports的另一个强大的设计工具,提供了丰富的报表设计选项。 5. **报表...

    ireport-5.6.0 Jasperreport 报表工具 jar包大全 Two

    【ireport-5.6.0 JasperReport 报表工具 jar包大全 Two】是一个针对Java开发人员的...在实际开发过程中,结合ireport的可视化界面和强大的数据处理能力,可以快速实现从数据到可视化的转变,满足各种复杂的报表需求。

    nc65_报表查询20w行

    标题“nc65_报表查询20w行”和描述“报表查询数据显示20w行”涉及的关键知识点主要集中在大型数据处理和报表查询方面,尤其是针对NetBeans平台(NC)的应用场景。NC65可能指的是NetBeans的一个特定版本或者一个定制...

Global site tag (gtag.js) - Google Analytics