JAVAレポート神器DynamicReports
3065 ワード
詳細
DynamicReportsは、JasperReportsベースの無料オープンソースのレポートツールです.
特色機能:ダイナミックレポートの作成を許可し、専門のデザイナを使わずに設計することができます.
レポートの作成、ファイルの生成、表示、印刷、またはその他の多くの一般的なフォーマット(PDF、Excel、Word)に簡単にエクスポートできます.
MAVENプロジェクトに以下の内容を追加
例:
DynamicReportsは、JasperReportsベースの無料オープンソースのレポートツールです.
特色機能:ダイナミックレポートの作成を許可し、専門のデザイナを使わずに設計することができます.
レポートの作成、ファイルの生成、表示、印刷、またはその他の多くの一般的なフォーマット(PDF、Excel、Word)に簡単にエクスポートできます.
MAVENプロジェクトに以下の内容を追加
net.sourceforge.dynamicreports
dynamicreports-core
3.0.4
mysql
mysql-connector-java
5.1.22
例:
public class SimpleReportDemo {
private static Connection getConn() throws ClassNotFoundException, SQLException{
Class.forName("com.mysql.jdbc.Driver");
return(Connection) DriverManager.getConnection("jdbc:mysql://localhost/database", "username", "password");
}
public static void buildReport(Connection conn){
JasperReportBuilder report=DynamicReports.report();//
//
StyleBuilder boldStl=DynamicReports.stl.style().bold();
StyleBuilder boldCenteredStl=DynamicReports.stl.style(boldStl).setHorizontalAlignment(HorizontalAlignment.CENTER);
StyleBuilder titleStl=DynamicReports.stl.style(boldCenteredStl).setFontSize(16);
StyleBuilder columnTitleStl=DynamicReports.stl.style(boldCenteredStl).setBorder(DynamicReports.stl.pen1Point())
.setBackgroundColor(Color.LIGHT_GRAY);
report.columns(Columns.column("ID", "id", DataTypes.integerType()).
setHorizontalAlignment(HorizontalAlignment.CENTER),//
Columns.column(" ", "code", DataTypes.stringType()),
Columns.column(" ","service",DataTypes.stringType()),
Columns.column(" ","province",DataTypes.stringType()),
Columns.column(" ","city",DataTypes.stringType()),
Columns.column(" ","type",DataTypes.stringType()))
.setColumnTitleStyle(columnTitleStl)
.setHighlightDetailEvenRows(true)
.title(Components.text(" ").setStyle(titleStl))//
.pageFooter(Components.pageXofY().setStyle(boldCenteredStl))//
.setDataSource("select * from codesubinfo limit 20", conn);//
try {
//
report.show();
// PDF
//report.toPdf(new FileOutputStream("D:/test.pdf"));
} catch (DRException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String orgs[]){
try {
Connection conn=getConn();
buildReport(conn);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}