ireport连接mysql_JasperReport 简单使用(数据库源为数据库)

本文档介绍了如何使用ireport和JasperReport连接MySQL数据库创建报表。首先,创建数据库数据源,然后通过ireport设计Report模板,包括编辑SQL和添加元素。接着,编写Java代码`ConnectionProvider`获取数据库连接,`JasperReportWithDatasource`用于填充和导出报表。最后展示了相关依赖如mysql-connector-java和groovy-all的配置。
摘要由CSDN通过智能技术生成

一 创建数据库数据源

4c98b3c3cd543501fe725a1d3aa6cb84.png

5a21ccb24cbdecbe8a5eefd47cf9fd62.png

e49d89f75c5d830543c9555fa961dc83.png

c5b761ebe176f54211fd221d273480f2.png

二 创建Report模板

1. 文件 -> 新建

2. 编辑SQL

7ba2a0edca604141a3b101da2663edcb.png

ea0c2ced141c363857db20902f69d505.png

3. 创建元素

531b0a6947a855fff8e65a155cba48ad.png

三 生成报表

jasperreport.datasource.ConnectionProvider.java

package jasperreport.datasource;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class ConnectionProvider {

private static String driverClassName ="com.mysql.jdbc.Driver";

private static String username="root";

private static String password="root";

private static String url="jdbc:mysql://localhost/mysql";

static{

try {

Class.forName(driverClassName);

} catch (ClassNotFoundException e) {

throw new RuntimeException(e);

}

}

public static Connection getConnection(){

try {

return DriverManager.getConnection(url, username, password);

} catch (SQLException e) {

throw new RuntimeException(e);

}

}

}

jasperreport.datasource.JasperReportWithDatasource.java

package jasperreport.datasource;

import java.io.InputStream;

import java.sql.Connection;

import java.util.HashMap;

import java.util.Map;

import net.sf.jasperreports.engine.JRExporterParameter;

import net.sf.jasperreports.engine.JasperFillManager;

import net.sf.jasperreports.engine.JasperPrint;

import net.sf.jasperreports.engine.export.JRTextExporter;

import net.sf.jasperreports.engine.export.JRTextExporterParameter;

public class JasperReportWithDatasource {

public static void export() throws Exception{

InputStream inputStream = JasperReportWithDatasource.class.getResourceAsStream("DBReport.jasper");

Map parameters = new HashMap();

Connection connection = ConnectionProvider.getConnection();

JasperPrint jasperPrint = JasperFillManager.fillReport(inputStream, parameters, connection);

JRTextExporter exporter = new JRTextExporter();

exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);

exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "db.txt");

exporter.setParameter(JRTextExporterParameter.PAGE_WIDTH, 200);

exporter.setParameter(JRTextExporterParameter.PAGE_HEIGHT, 100);

exporter.exportReport();

}

public static void main(String[] args) throws Exception{

export();

}

}

pom.xml

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

4.0.0

JasperReport

JasperReport

0.0.1-SNAPSHOT

net.sf.jasperreports

jasperreports

3.7.2

org.codehaus.groovy

groovy-all

1.7.5

mysql

mysql-connector-java

5.1.13

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值