我很难尝试从我的 ireport 与系统建立连接。我的问题是我使用的系统是集成的,换句话说,我的几个客户将使用相同的系统,因此使用相同的报告。这就是问题所在,银行的名称和每个客户的 ip 不会每次都相同。所以我想知道jasper如何从系统中获取银行ip和银行名称,而不是通过ireport建立的连接?无论如何通过代码将这些数据发送到 ireport 吗?如果是这样,我该怎么做?
问问题
315 次
2 回答
1
以下是 iReport 提供的数据源和连接类型列表:
-JDBC 连接。
-JavaBean 集合数据源。
-XML 数据源。
-CSV 数据源。
- 休眠连接。
- 弹簧加载的休眠连接。
-Hadoop Hive 数据源。
-JRDataSourceProvider。
- 自定义数据源。
-蒙德里安 OLAP 连接。
-XMLA 连接。
-EJBQL 连接。
- 空数据源。
对于您的情况,您需要“JavaBean 集合数据源”来填充您的 java 代码中的报告,使用这两个类:net.sf.jasperreports.engine.data.JRBeanCollectionDataSource,net.sf.jasperreports.engine.data.JRBeanArrayDataSource
于 2015-06-21T12:44:48.360 回答
0
我的系统通过类进行通信Connection
。Java可以.jasper
通过这个类与数据库通信吗?
我的连接
===============
package newpackage;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
/**
*
* @author User
*/
public class ConnectionJava {
Connection conn;
public Connection conectar() {
try {
Class.forName(DriverConnectionJava);
conn = DriverManager.getConnection(database, username, password);
} catch (SQLException ex) {
Logger.getLogger(ConnectionJava.class.getName()).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null, "Error login with data base", "ERROR!", JOptionPane.ERROR_MESSAGE);
} catch (ClassNotFoundException ex) {
Logger.getLogger(ConnectionJava.class.getName()).log(Level.SEVERE, null, ex);
JOptionPane.showMessageDialog(null, "Error connection data base", "ERROR!", JOptionPane.ERROR_MESSAGE);
}
return conn;
}
public void desconect() {
try {
conn.close();
} catch (SQLException ex) {
Logger.getLogger(ConnectionJava.class.getName()).log(Level.SEVERE, null, ex);
}
}
private String database = "jdbc:mysql://localhost/Java";
private String username = "root";
private String password = "root";
private String DriverConnectionJava = "com.mysql.jdbc.Driver";
}
于 2013-01-24T16:24:29.260 回答