JasperReports (http://community.jaspersoft.com/project/jasperreports-library) is a very popular and solid reports solution that can generate reports in several formats, such as:
HTML
Excel
Word
Open Office format
PDF
In order to get your reports, you have a visual tool called Jaspersoft Studio, in which you can drag and drop elements such as labels, images, data fields, and much more. Jasper will store this metadata (the report definition) in an XML file, also known as JRXML. If you want, you can edit and work with this XML without any editor; however, it is way better to use the Jaspersoft Studio tool to gain productivity.
Jasper can work with several data sources, such as databases, XML, or even objects in memory. For this book, we will use the database datasource to access our MySQL database.