dynamicreports:java快速报表组件-亚博电竞手机版

本文由码农网 – 小峰原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划!

dynamicreports是一款相当敏捷的java报表组件,并且是完全免费开源的。和之前介绍的jfreechart不同,dynamicreports是报表和可视化图表相结合的,可以更加直观地展现和统计数据。dynamicreports是对jasperreports的扩展,完全可以不用专门的设计器来设计。

dynamicreports的特点

  • 使用非常方便
  • 可继承的报表设计
  • 无需可视化设计工具
  • 可混合动态报表和静态报表

dynamicreports的使用方法

这里我们以maven项目为例,你可以在项目中加入以下xml文件:



net.sourceforge.dynamicreports

dynamicreports-core

3.0.4





mysql

mysql-connector-java

5.1.22

java代码如下:

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();

}

}

dynamicreports作为一款java报表和图表生成类库,其小巧和简单是一大亮点。

本文链接:http://www.codeceo.com/article/dynamicreports-java.html
本文作者:码农网 – 小峰
原创作品,转载必须在正文中标注并保留原文链接和作者等信息。]

展开全文
内容来源于互联网和用户投稿,文章中一旦含有亚博电竞手机版的联系方式务必识别真假,本站仅做信息展示不承担任何相关责任,如有侵权或涉及法律问题请联系亚博电竞手机版删除

最新文章

网站地图