當前位置:首頁 » 編程語言 » java做報表

java做報表

發布時間: 2022-12-26 12:02:38

Ⅰ 做java 報表用什麼框架好

你好,推薦以下幾種:

  1. JasperReports是一個基於Java的開源報表工具,它可以在Java環境下像其他IDE報表工具一樣來製作報表。JasperReports支持PDF、HTML、XLS、CSV和XML文件輸出格式。JasperReports是當前Java開發者最常用的報表工具。

  2. Pentaho是一個以工作流為核心的、強調面向解決方案而非工具組件的BI套件,整合了多個開源項目,目標是和商業BI相抗衡。它偏向於與業務流程相結合的BI解決方案,側重於大中型企業應用。它允許商業分析人員或開發人員創建報表,儀表盤,分析模型,商業規則和BI流程。

  3. OpenReports是一個基於Web的報表解決方案,可為用戶提供通過瀏覽器查看動態創建的PDF、HTML或XLS格式報表的能力。OpenReports使用Java開發的,並使用JasperReports作為報表生成引擎。

  4. JFreeReport(現改名為Pentaho Reporting)是一個用來生成報表的Java類庫。它為Java應用程序提供一個靈活的列印功能並支持輸出到列印機和PDF,Excel,HTML和XHTML,PlainText,XML和CSV文件中。

  5. JXLS是基於Jakarta POI API的Excel報表生成工具,可以生成精美的Excel格式報表。它採用標簽的方式,類似JSP標簽,寫一個Excel模板,然後生成報表,非常靈活,簡單!

  6. BIRT是一個Eclipse-based開放源代碼報表系統。它主要是用在基於Java與J2EE的Web應用程序上。BIRT主要由兩部分組成:一個是基於Eclipse的報表設計和一個可以加到你應用服務的運行期組件。BIRT同時也提供一個圖形報表製作引擎。

Ⅱ 求推薦一款性價比高的JAVA報表工具

潤乾報表:
1、簡單行列報表、中國式復雜報表,報表工具都能輕松實現。
2、創新的流式大報表,秒級的呈現速度,極少的內存佔用,流暢的Excel導出和直接列印!而且,流式大報表不依賴於資料庫的分頁能力。
3、支持數據錄入。數據錄入可以做到來去無關,來去自由。網頁上錄入可以做到數據合法性校驗和自動計算。結合集算器,可以做到任意數據源的錄入。
4、類似Excel的填報設計器,業務人員完成設計後上傳伺服器,填寫人員即可網上填寫!收集上來的數據,業務人員還可以在潤乾BI中自助分析!
5、大屏展示、炫酷的統計圖、方便的手機統計圖表,都能實現。
支持HTML5和SVG圖形格式,具備豐富的表現力,能夠設計出超酷的統計圖形。同時,可以降低傳輸流量,更適合移動設備。
集成免費的網路echarts、D3、chart.js,有更多炫酷統計圖可供選擇。
6、提供整套報表平台。從用戶管理到許可權登錄,只要配置一下就可以直接上線使用。更重要的是,報表中心完全開源,想怎麼改就怎麼改。
7、提供強大的自助報表功能,輕松實現用戶拖拽報表。自定義報表的數據源可以是SQL,也可以是文本、JSON或者Excel文件。提供的自助報表,可以作為一個插件集成到應用系統中,成為應用系統的一部分,還可以深度定製,充分滿足不同用戶的個性化需求。

Ⅲ 利用java怎麼實現生成報表(Excel文件)

JAVA POI 組件//創建HSSFWorkbook對象
HSSFWorkbook wb = new HSSFWorkbook();
//創建HSSFSheet對象
HSSFSheet sheet = wb.createSheet("sheet0");
//創建HSSFRow對象
HSSFRow row = sheet.createRow((short)0);
//創建HSSFCell對象
HSSFCell cell=row.createCell((short)0);
//用來處理中文問題
cell.setEncoding(HSSFCell.ENCODING_UTF_16);
//設置單元格的值
cell.setCellValue("單元格中的中文");
//定義你需要的輸出流
OutputStream out = new FileOutputStream("viwo.xls");
//輸出Excel

Ⅳ 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=0&category=100"
title="100 = 7,048"
onclick="javascript:clickChart('100');return false;">
<AREA SHAPE="RECT" COORDS="143,27,188,255" href="?series=0&category=200"
title="200 = 6,721"
onclick="javascript: clickChart ('200');return false;">
<AREA SHAPE="RECT" COORDS="205,54,250,255" href="?series=0&category=300"
title="300 = 5,929"
onclick="javascript: clickChart ('300');return false;">
<AREA SHAPE="RECT" COORDS="267,85,312,255" href="?series=0&category=400"
title="400 = 5,005"
onclick="javascript: clickChart ('400');return false;">
<AREA SHAPE="RECT" COORDS="329,17,374,255" href="?series=0&category=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開發中使用什麼報表工具

國產報表也就兩家獨大,南帆軟北潤乾,基本功能都差不多。

Ⅶ 最理想的JAVA報表工具有哪些

JasperReports是一個基於Java的開源報表工具,它可以在Java環境下像其它IDE報表工具一樣來製作報表。JasperReports
支持PDF、HTML、XLS、CSV和XML文件輸出格式。JasperReports是當前Java開發者最常用的報表工具。

Pentaho是一個以工作
流為核心的、強調面向解決方案而非工具組件的BI套件,整合了多個開源項目,目標是和商業BI相抗衡。它偏向於與業務流程相結合的BI解決方案,側重於大
中型企業應用。它允許商業分析人員或開發人員創建報表,儀表盤,分析模型,商業規則和 BI 流程。

功能和特點
◆ 工作流引擎:Shark and JaWE
◆ 資料庫:Firebird RDBMS

集成管理和開發環境:Eclipse
◆ 報表工具:Eclipse BIRT
◆ ETL工具:Enhydra/Kettle
◆ OLAP
Server:Mondrian
◆ OLAP展示:JPivot
◆ 數據挖掘組件:Weka

應用伺服器和Portal伺服器:JBoss
◆ 單點登陸服務及LDap認證:JOSSO
◆ 自定義腳本支持:Mozilla Rhino
Javascript腳本處理器

OpenReports
是一個基於web的報表解決方案,可為用戶提供通過瀏覽器查看動態創建的PDF、HTML或XLS格式報表的能力。OpenReports
使用Java開發的,並使用JasperReports作為報表生成引擎。

JFreeReport (現改名為 Pentaho
Reporting)是一個用來生成報表的Java類庫。它為Java應用程序提供一個靈活的列印功能並支持輸出到列印機和PDF, Excel,
HTML和XHTML, PlainText, XML和CSV文件中。

XLS是基於Jakarta POI
API的Excel報表生成工具,可以生成精美的Excel格式報表。它採用標簽的方式,類似JSP標簽,寫一個Excel模板,然後生成報表,非常靈活,簡單!

BIRT是一個Eclipse-based開放源代碼報表系統。它主要是用在基於Java與J2EE的Web應用程序上。BIRT主要由兩部分組成:一個是基於Eclipse的報表設計和一個可以加到你應用服務的運行期組件。BIRT同時也提供一個圖形報表製作引擎。

個人用過 JFreeReport JasperReports 感覺比較容易上手

Ⅷ 怎麼用JAVA報表製作EXCEL格式報表

可以用FineReport實現。finereport是純java軟體,類excel設計模式,可設置定時報表、自定匯總數據發送郵件,另外幾乎不用自己編寫代碼,所以新手很容易上手使用。

Ⅸ java做報表

把資料庫中需要的數據處理後做成可視化圖表,根據不同需求可以做成不同形式的圖表,節省時間,效果比較好,報表軟體國外的話水晶報表,SAP公司的商業報表工具,作為SAP「集團」下的報表組件模塊。10年事前盛行一時,後被SAP收購。但水晶報表(Crystal Report)在理論上只支持單數據集,對多集的支持依賴於資料庫的運算能力(叉乘與聯合等或寫存儲過程),多庫一般難以支持。

國內的話FineReport,目前國內報表軟體領域發展最成熟也是市場份額最高的。IDC的報告里,17年甚至超過SAP,IBM,在這個細分領域,也是Gartner的BI選型市場指南里唯一推薦的報表工具。零代碼開發,類似excel的設計方式,上手簡單。尤其數據字典、實際值和顯示值等的設計更是切入快速開發的要害,這些放在別的語言和體系下往往要大量代碼才能實現且頻繁需要的功能放在FineReport里卻只是幾個操作的事情。移動端報表+可視化大屏。

Ⅹ java報表開發插件的產品優勢有哪些

第一、全面性
java報表開發插件的功能具有全面性的特點,凡是在處理報表中所需要使用到的全部的功能它都是具備的,比如說進行復雜報表的設計,對報表的美化過程等,使用該插件就可以輕松完成這樣的過程,不管多麼復雜都可以高效的完成,並且給用戶呈現出一個美化直觀的效果。
第二、多樣化
java報表開發插件的多樣化的功能,它不僅僅上述的功能的,對於數據的處理也是它的標志性功能之一,當用戶需要進行數據的採集時,它是最好的工具;當用戶需要進行數據的查詢時它也是最好的幫手,能夠幫助用戶在各種不同的條件下進行數據的查詢;當用戶需要對已完成的報表進行優化,如優化格式、添加美觀圖表時,它是一個高效率的利器。
如果用戶需要使用不同的報表,在該插件中就有各種經典的報表模型,它可以為您靈活的展現出來,尤其是一些通用的具有代表性的報表上更是如此,如果用戶需要列印,它會給用戶提供最簡單方便的列印方式;當用戶需要對企業的相關部門進行工程管理時它可以啟動統一的管理模塊,而且可以對各個不同的人員實行輕松的許可權控制,讓用戶能夠自從宏觀上進行數據的管理和控制!
當用戶需要在移動應用上也看到報表中的數據,那麼java報表開發插件還可以在手機上以及平板電腦上設計一些終端,讓用戶即使不是在辦公室中也能夠實時看到需要的數據,看到數據的流變,從而實現隨時隨地瀏覽數據,隨時隨地辦公的效果。
作為一款被各個大型企業以及商業銀行等廣泛的使用的java報表開發插件,它不僅僅在使用功能上具有上述的優勢,還具有技術先進的特點,經過了先進技術的開發之後它的強大功能讓它具有實用性強的特點,同時要看到的是它是一款學習起來比較簡單的插件,在入門環節中能夠為用戶展示具體的操作方法,讓您能夠在最短的時間內掌握最有用的報表設計和處理方法。

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:333
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:374
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:609
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:30
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:104
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:940
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:736
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:800
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:507
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:369