JasperReports 3.6: Creating a Report from Relational Data

If you’re a Java developer who wants to make the most of the world’s most popular open source reporting engine, this book is all you need: a step-by-step course in creating super-attractive, user-friendly business reports.

(For more resources on JasperReports, see here.)

Getting ready

You will need PostgreSQL to follow this recipe. Refer to the installPostgreSQL.txt file included in the source code download (chap4), which shows how you will install and run PostgreSQL. Note that your installation of PostgreSQL should be up and running before you proceed.

The source code for this article also includes a file named CreateDbIntoPGS.txt, which will help you to create a database named jasperdb5.

How to do it...

The following simple steps will show you how to connect iReport to a database:

  1. Run iReport; it will open with a Welcome Window, as shown in the following screenshot:

    JasperReports 3.6

  2. If you have not made any database connection so far in your iReport installation, you will see an Empty datasource shown selected in a drop-down list just below the main menu. Click on the Report Datasources icon shown encircled to the right of the drop-down list, as shown in the following screenshot:

    JasperReports 3.6

  3. A new window named Connections / Datasources will open, as shown in the following screenshot. This window lists an Empty datasource as well as the datasources you have made so far.

    JasperReports 3.6

  4. Click the New button shown at the top right of the Connections / Datasources window. This will open a new Datasource selection window, as shown in the following screenshot:

    JasperReports 3.6

  5. You will see Database JDBC connection is selected by default. Click the Next button at the bottom of the Datasource window.
  6. A new window named Database JDBC connection will open, as shown in the following screenshot:

    JasperReports 3.6

  7. Enter PG as the name for your new database connection in the input box beside the Name field.

    PG is just a name for the database connection you are creating. You can give any name and create any number of database connections.

  8. Click on the JDBC Driver drop-down list; it will drop-down to show a list of available JDBC drivers. As you are connecting to the PostgreSQL database, select the Postgre SQL (org.postgresql.Driver) option from the drop-down list, as shown in the following screenshot:

    JasperReports 3.6

(For more resources on JasperReports, see here.)

  • Enter localhost as the name of the server hosting your database in the input box beside the Server Address field, as shown in the following screenshot:

    JasperReports 3.6

    Note that here I am assuming your PostgreSQL is installed on the same PC as you are running iReport. If PostgreSQL is installed over a network, you will enter the IP address of the machine hosting PostgreSQL instead of localhost.

  • Enter jasperdb5 as the name of the database instance created in the Getting ready section in the Database field, as shown in the following screenshot:

    JasperReports 3.6

    The name of the database instance will be different depending upon which database instance you are using. For this recipe you are using a database named jasperdb5 (which you created earlier in the Getting ready section). But when you are executing some other recipe, you will enter the name of the database instance that contains sample data for that particular recipe.

  • Click the Wizard button available to the right of the Database text box. This will update the JDBC URL field, as shown in the following screenshot:

    JasperReports 3.6

  • Provide postgres as the value of the Username and Password fields, as shown in the following screenshot:

    JasperReports 3.6

  • Check the Save password checkbox beside the Password field shown in step 12 to save your database password permanently for reports generated using iReport.
  • Click the Test button to test the new database connection. In the case of a successful connection, you will see a Connection test successful message in a dialog window. Dismiss the message by clicking the OK button.
  • Click the Save button to save the newly created connection. You will see that the Connections / Datasources window will open showing your new connection set as the default connection in the connections list, as shown in the following screenshot:

    JasperReports 3.6

  • Now you are all set to generate a report from the data contained in your PostgreSQL installation. Whenever you are opening or viewing a report based on data contained in PostgreSQL, just make sure that PG is selected in the datasources drop-down list, as shown in the following screenshot:

    JasperReports 3.6

  • There's more...

    You have learned how to connect iReport to PostgreSQL. If you have some other database, you just need to select the appropriate JDBC driver from the JDBC Driver drop-down list in step 8 of the recipe.

    iReport comes bundled with drivers for the following open source databases:

    • MySQL
    • PostgreSQL
    • HSQLDB

    If you are not using an open source database, you will need to separately download and install the relevant JDBC drivers.

    summary

    This article showed how you can connect JasperReports to your relational database.


    Further resources on this subject:


    Books to Consider

    comments powered by Disqus
    X

    An Introduction to 3D Printing

    Explore the future of manufacturing and design  - read our guide to 3d printing for free