「报表管理java」报表管理中默认有哪些类型表格

博主:adminadmin 2022-12-15 17:15:09 73

本篇文章给大家谈谈报表管理java,以及报表管理中默认有哪些类型表格对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java做报表

把数据库中需要的数据处理后做成可视化图表,根据不同需求可以做成不同形式的图表,节省时间,效果比较好,报表软件国外的话水晶报表,SAP公司的商业报表工具,作为SAP“集团”下的报表组件模块。10年事前盛行一时,后被SAP收购。但水晶报表(Crystal Report)在理论上只支持单数据集,对多集的支持依赖于数据库的运算能力(叉乘与联合等或写存储过程),多库一般难以支持。

国内的话FineReport,目前国内报表软件领域发展最成熟也是市场份额最高的。IDC的报告里,17年甚至超过SAP,IBM,在这个细分领域,也是Gartner的BI选型市场指南里唯一推荐的报表工具。零代码开发,类似excel的设计方式,上手简单。尤其数据字典、实际值和显示值等的设计更是切入快速开发的要害,这些放在别的语言和体系下往往要大量代码才能实现且频繁需要的功能放在FineReport里却只是几个操作的事情。移动端报表+可视化大屏。

java怎么做报表功能?

使用 JFreeChart 生成各种样式的图表

限于篇幅的问题我们在这里只实现两种常用的图表,其他类型图表读者可以触类旁通。我们先给出柱状图的实现,饼图的实现再来跟柱状图进行比较。

1 柱状图

package lius.chart.demo;

import java.io.*;

import org.jfree.data.*;

import org.jfree.chart.*;

import org.jfree.chart.plot.*;

/**

* 该类用于演示最简单的柱状图生成

* @author Winter Lau

*/

public class BarChartDemo {

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

CategoryDataset dataset = getDataSet2();

JFreeChart chart = ChartFactory.createBarChart3D(

"水果产量图", // 图表标题

"水果", // 目录轴的显示标签

"产量", // 数值轴的显示标签

dataset, // 数据集

PlotOrientation.VERTICAL, // 图表方向:水平、垂直

true, // 是否显示图例(对于简单的柱状图必须是 false)

false, // 是否生成工具

false // 是否生成 URL 链接

);

FileOutputStream fos_jpg = null;

try {

fos_jpg = new FileOutputStream("D:\\fruit.jpg");

ChartUtilities.writeChartAsJPEG(fos_jpg,100,chart,400,300,null);

} finally {

try {

fos_jpg.close();

} catch (Exception e) {}

}

}

/**

* 获取一个演示用的简单数据集对象

* @return

*/

private static CategoryDataset getDataSet() {

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(100, null, "苹果");

dataset.addValue(200, null, "梨子");

dataset.addValue(300, null, "葡萄");

dataset.addValue(400, null, "香蕉");

dataset.addValue(500, null, "荔枝");

return dataset;

}

/**

* 获取一个演示用的组合数据集对象

* @return

*/

private static CategoryDataset getDataSet2() {

DefaultCategoryDataset dataset = new DefaultCategoryDataset();

dataset.addValue(100, "北京", "苹果");

dataset.addValue(100, "上海", "苹果");

dataset.addValue(100, "广州", "苹果");

dataset.addValue(200, "北京", "梨子");

dataset.addValue(200, "上海", "梨子");

dataset.addValue(200, "广州", "梨子");

dataset.addValue(300, "北京", "葡萄");

dataset.addValue(300, "上海", "葡萄");

dataset.addValue(300, "广州", "葡萄");

dataset.addValue(400, "北京", "香蕉");

dataset.addValue(400, "上海", "香蕉");

dataset.addValue(400, "广州", "香蕉");

dataset.addValue(500, "北京", "荔枝");

dataset.addValue(500, "上海", "荔枝");

dataset.addValue(500, "广州", "荔枝");

return dataset;

}

}

2 饼图

package lius.chart.demo;

import java.io.*;

import org.jfree.data.*;

import org.jfree.chart.*;

/**

* 用于演示饼图的生成

* @author Winter Lau

*/

public class PieChartDemo {

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

DefaultPieDataset data = getDataSet();

JFreeChart chart = ChartFactory.createPie3DChart("水果产量图", // 图表标题

data,

true, // 是否显示图例

false,

false

);

// 写图表对象到文件,参照柱状图生成源码

}

/**

* 获取一个演示用的简单数据集对象

* @return

*/

private static DefaultPieDataset getDataSet() {

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("苹果",100);

dataset.setValue("梨子",200);

dataset.setValue("葡萄",300);

dataset.setValue("香蕉",400);

dataset.setValue("荔枝",500);

return dataset;

}

}

3将生成的图表移到浏览器上

package lius.chart.demo;

import java.io.IOException;

import javax.servlet.*;

import javax.servlet.http.HttpServlet;

import org.jfree.data.*;

import org.jfree.chart.*;

/**

* 演示通过 servlet 直接输出图表

* @author Winter Lau

*/

public class ChartDemoServlet extends HttpServlet {

public void service(ServletRequest req, ServletResponse res)

throws ServletException, IOException

{

res.setContentType("image/jpeg");

DefaultPieDataset data = getDataSet();

JFreeChart chart = ChartFactory.createPie3DChart("水果产量图",

data,

true,

false,

false

);

ChartUtilities.writeChartAsJPEG(res.getOutputStream(),

100,chart,400,300,null);

}

/**

* 获取一个演示用的简单数据集对象

* @return

*/

private static DefaultPieDataset getDataSet() {

DefaultPieDataset dataset = new DefaultPieDataset();

dataset.setValue("苹果",100);

dataset.setValue("梨子",200);

dataset.setValue("葡萄",300);

dataset.setValue("香蕉",400);

dataset.setValue("荔枝",500);

return dataset;

}

}

4高级主题

很多情况我们不仅仅要求可以在浏览器上显示一个图表,我们更需要客户可以直接在图表上做一下交互的操作,例如获取信息提示,点击图表某个部分进行更详细信息的展示等等。例如前面生成的简单柱状图,用户需要在看到柱状图后点击某种水果例如是苹果即可看到各个地区苹果产量的情况。为此就要求该图形具有交互操作的功能。在 HTML 中为了让一个图像具有可交互的功能就必须给该图像定义一个 Map 对象。下表节选一段具有该功能的 HTML 代码:

MAP NAME="chartMap"

AREA SHAPE="RECT" COORDS="81,15,126,254" href="?series=0category=100"

title="100 = 7,048"

onclick="javascript:clickChart('100');return false;"

AREA SHAPE="RECT" COORDS="143,27,188,255" href="?series=0category=200"

title="200 = 6,721"

onclick="javascript: clickChart ('200');return false;"

AREA SHAPE="RECT" COORDS="205,54,250,255" href="?series=0category=300"

title="300 = 5,929"

onclick="javascript: clickChart ('300');return false;"

AREA SHAPE="RECT" COORDS="267,85,312,255" href="?series=0category=400"

title="400 = 5,005"

onclick="javascript: clickChart ('400');return false;"

AREA SHAPE="RECT" COORDS="329,17,374,255" href="?series=0category=Diet"

title="Diet = 7,017" onclick="javascript:

clickChart ('Diet');return false;"

/MAP

由此就产生了一个问题:如果根据一个图像来生成对应的 MAP 对象。我们回头看看刚才的代码,在创建一个图表对象时候有两个参数,我们举柱状图的例子来讲这两个参数就是 ChartFactory. createBarChart3D 方法中的最后两个参数,这两个参数的类型都是布尔值。这两个参数意思分别是:是否创建工具提示 (tooltip) 以及是否生成 URL。这两个参数分别对应着 MAP 中一个 AREA 的 title 属性以及 href 属性。

可是我想知道的是怎么来产生这个 MAP 啊!哈哈,不要着急,JFreeChart 已经帮我们做好生成 MAP 对象的功能。为了生成 MAP 对象就要引入另外一个对象:ChartRenderingInfo。因为 JFreeChart 没有直接的方法利用一个图表对象直接生成 MAP 数据,它需要一个中间对象来过渡,这个对象就是 ChartRenderingInfo。

支持Java的报表工具都有哪些?

支持Java的报表工具 :

我们所说的”支持”Java的报表工具.其实就是非Java的报表工具,但是可以在Java程序中调用. 这样的产品很多,总的讲一大类是采用独立报表服务器的,如Bo/Crystal Report,Brio,Cognos等等,另一大类是在前端有控件的,如数巨报表等。

关于Java的报表工具 我们可以到思迈特软件Smartbi了解一下,广州思迈特软件Smartbi有限公司(思迈特软件Smartbi)成立于2011年,致力于为企业客户提供一站式商业智能解决方案,以提升和挖掘企业客户的数据价值。

“思迈特软件Smartbi”是企业级商业智能和大数据分析品牌,经过多年持续自主研发,凝聚大量商业智能最佳实践经验,整合了各行业的数据分析和决策支持的功能需求。

报表工具靠不靠谱,来试试Smartbi,思迈特软件Smartbi经过多年持续自主研发,凝聚大量商业智能最佳实践经验,整合了各行业的数据分析和决策支持的功能需求。满足最终用户在企业级报表、数据可视化分析、自助探索分析、数据挖掘建模、AI智能分析等大数据分析需求。

思迈特软件Smartbi个人用户全功能模块长期免费试用

马上免费体验:Smartbi一站式大数据分析平台

报表工具或java报表都有什么作用,用途

1、Jasperreport:最常用的报表工具,常和Ireport搭配使用。可以在java环境下制作报表,支持PDF、XLS、HTML、CSV、XLM文件输出格式。

2、Irepoer:允许用户可视化编辑包含charts,图片,子报表等的复杂报表,还集成了TFreechart图表制作包。

3、BIRT:由数据连接,数据转换,业务逻辑设计,表现四个组成逻辑构成,可以设计制作简单的列表报表,交叉报表和文本报表,也支持饼图、折线图、柱形图等基础图表。

4、FineReport:类EXCEL界面,特色功能报表制作,报表权限配置,报表管理还有填报,支持各种数据库,能去各种数据源,专门针对解决复杂的中国式报表。

最理想的JAVA报表工具有哪些?

润乾报表是一个纯JAVA的企业级报表工具,是J2EE环境下开发WEB报表应用的最好工具。

润乾报表作为纯JAVA报表工具,在J2EE的Web报表应用中其集成性和部署能力都明显优于BO/Crystal Report, Brio等非Java产品;在JAVA报表展现方面它不仅能实现其他报表产品所能实现的常规的报表展现,更能实现其他工具不能实现的EXCEL精确导出等功能;在JAVA报表设计方面,更是以其创新的新一代报表模型将报表设计效率大幅度提高,相比其他产品具有巨大优势。

集成与部署:

润乾报表采用纯JAVA开发,非常适合在J2EE下集成,其运行环境非常简单,只要有JDK即可工作,可与应用非常紧密的集成,轻易部署在各种操作系统如Windows, Linux, Unix下。

润乾报表3.0的服务器是个逻辑概念,并没有一个物理的服务器在运行。它是作为应用服务器上的一个应用提交的,或者直接向应用程序员提交JAR包。应用程序员可以简单地通过Taglib标记进行报表的发布,也可以使用完整的JAVA API获得更深入的控制力度。

许多其他JAVA报表产品如CRYSTAL REPORT/BO,Cognos等都需采用独立的报表服务器,而作为100%的JAVA报表工具,润乾报表提供了更高的运行效率,为程序员提供了更大的灵活性与可控制,实现了与应用程序的无缝衔接,并且可以充分利用应用服务器的各种能力,如平衡负载、统一部署等。

Java报表展现:

润乾报表不需安装控件,可以实现纯HTML报表方式,可以支持PDF,EXCEL输出,提供了全部的页面与打印控制,能很多地满足Web报表的展现需要。同时,润乾报表对图表有良好的支持,可以生成柱图、饼图、折线图等十几种图表。

Java报表设计:

润乾报表的核心特点在于开创性地提出了新一代报表模型,采用了革命性的多源分片、不规则分组、动态格间运算、行列对称等技术,使得复杂JAVA报表的设计简单化,以往难以实现的报表可以轻松实现,避免了大量的复杂SQL编写与前期数据准备,JAVA报表设计的效率提高了一个数量级,远远超越了其他各种JAVA报表工具。

填报:

除此之外,润乾报表还提供了强有力的填报功能,不仅提供了灵活的表单设计和自动填写控制功能,而且支持离线填报、批量导入、汇总填报等多种方式,可以以先进的动态库表关联技术实现复杂的复合表单填报并保证数据的一致性,其填报能力远远超出同类产品。

润乾报表作为纯JAVA的报表工具,在J2EE的Web报表应用中其集成性和部署能力都明显优于BO/Crystal Report, Brio等非Java产品;在报表展现方面它不仅能实现其他报表产品所能实现的常规的报表展现,更能实现其他工具不能实现的EXCEL精确导出等功能;在报表设计方面,更是以其创新的新一代报表模型将报表设计效率大幅度提高,相比其他产品具有巨大优势。

可以说,润乾报表在Web报表工具的各个关键方面均全面达到先进水平,而在报表设计方面更是出类拔萃,无疑是最好的Java报表工具,是J2EE环境下开发WEB报表应用的最优选择,真正的做到商业智能,随需而动。

报表管理java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于报表管理中默认有哪些类型表格、报表管理java的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-15,除非注明,否则均为首码项目网原创文章,转载请注明出处。