最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

非常全面的IReport的使用教程

 更新時(shí)間:2021年10月26日 11:02:47   作者:此成非彼誠  
iReport 是為JasperReports Library和JasperReports Server設(shè)計(jì)的報(bào)表可視化設(shè)計(jì)器。本教程給大家詳細(xì)介紹IReport的使用解析,感興趣的朋友一起看看吧

簡介

iReport 是為JasperReports Library和JasperReports Server設(shè)計(jì)的報(bào)表可視化設(shè)計(jì)器。

iReport是一個(gè)能夠創(chuàng)建復(fù)雜報(bào)表的開源項(xiàng)目。它100%使用Java語言編寫。是目前全球最為流行的開源報(bào)表設(shè)計(jì)器。

由于它豐富的圖形界面,你能夠很快的創(chuàng)建出任何一種你想要的報(bào)表。

用于打印的數(shù)據(jù)可以通過多種方式獲取包括:JDBC, TableModels, JavaBeans, XML,Hibernate(支持HQL查詢語言), CSV等。

它支持多種輸出格式包括:PDF,RTF,XML,XLS,CSV,HTM。

安裝環(huán)境

本教程環(huán)境如下,如版本不同出現(xiàn)與本文內(nèi)容不合情況請自行百度~

版本

iReport:版本5.0.0

JDK環(huán)境:版本1.6,全名:jdk1.6.0_45,即下載jdk-6u45-windows-x64.exe

注意事項(xiàng)

需要本機(jī)/虛擬機(jī)的JDK環(huán)境變量設(shè)置為JDK1.6才能運(yùn)行iReport,環(huán)境變量怎么設(shè)置應(yīng)該不必多說了吧,忘了的可以看我這篇博文:win7/win10下的jdk的安裝和環(huán)境變量的配置

環(huán)境變量配置好后如果還是打不開iReport,請重新啟動電腦

樓主不才,如有錯(cuò)誤之處,請?jiān)u論必虛心改之

百度云下載地址

鏈接: https://pan.baidu.com/s/140AioMEZi6N4cedYXl4sjw

提取碼: yujq

失效請聯(lián)系樓主

基本操作

 新建

1.左上角文件——》new

QQ截圖20200927085054

  • 一般選擇A4紙張,而且是豎的A4,根據(jù)實(shí)際情況選擇其他類型紙張大小
  • 再選擇 Open this Template 打開此模板

2.對模板進(jìn)行命名

QQ截圖20200927090431

  • Repoet name:模板名
  • Location:文件存放地址
  • File:模板文件全路徑(Location\Repoet name.jrxml)
  • 下一步

3.finish完成新建

QQ截圖20200927090857

頁面布局

1.打開模板可以看到這樣的視圖

QQ截圖20200927093724

  • 紅框標(biāo)出來的是頁邊距,和word中的頁邊距一樣,是內(nèi)容與紙張的距離
  • Title:標(biāo)題,僅在第一頁顯示一次
  • Page Header:頁眉,每頁出現(xiàn),可用于放頁碼,創(chuàng)建人等信息,值可變
  • Column Header:列頭部信息,每頁出現(xiàn),一般不用
  • Detail:內(nèi)容信息(使用重點(diǎn)),可添加多個(gè)Detail,控件基本上放在Detail中,它會自動根據(jù)體內(nèi)的內(nèi)容大小進(jìn)行擴(kuò)展、分頁
  • Column Footer:列底部信息,每頁出現(xiàn),一般用于統(tǒng)計(jì)列數(shù)據(jù)。
  • Page Footer:頁腳,每頁出現(xiàn),可用于放頁碼,創(chuàng)建人等信息,值可變
  • Last Page Footer:最終頁腳,最后一頁顯示,一般用于顯示編制人等信息
  • Summary:總結(jié),最后一頁顯示,一般用于顯示所有頁面的統(tǒng)計(jì)

2.刪除和添加頁面布局

QQ截圖20200927095821

  • 可以看到上方所解釋的布局在此處都有其顯示,灰色的代表這個(gè)布局不啟用
  • 刪除布局:右鍵點(diǎn)擊一個(gè)啟用的布局——》Delete Band
  • 添加布局:右鍵點(diǎn)擊一個(gè)可以添加的布局(一般添加Detail)——》Add Another
  • Detail Band啟用布局:右鍵點(diǎn)擊一個(gè)未啟用的布局——》Add Band

style樣式

和前端的css一樣,為了樣式復(fù)用,減少繁瑣的樣式操作,每個(gè)樣式都可以繼承另一個(gè)樣式,繼承的樣式?jīng)]有本身樣式的優(yōu)先級高

中文支持必備

右鍵點(diǎn)擊Styles——》添加一個(gè)style名為china

QQ截圖20200930125019

  • pdf font name:STSong-Light
  • Pdf Embedded:√
  • pdf Encoding:UniGB-UCS2-H
  • default style:√

比較常用的屬性

  • Padding and borders:設(shè)置內(nèi)邊距和邊框
  • Font name:字體
  • Size:字體大小
  • Horizontal Alignment:水平方向所處位置
  • Vertical Alignment:垂直方向所處位置
  • Line Spacing:行距
  • Blank when null:勾選后如果傳入的數(shù)據(jù)是空的,不會顯示null,而是空白

基礎(chǔ)控件

右上角有控件列表,使用只需要拖進(jìn)布局視圖即可

image-20200928095840391

Break:分頁符

其中的Page Break 表示在此之下建立一個(gè)新的分頁,相當(dāng)于word的分頁符

舉例:

在第二頁1前放一個(gè)分頁符:

image-20200928104442163

查看預(yù)覽效果:

QQ截圖20200928104605

QQ截圖20200928104702

分頁符后就是這一頁的結(jié)束,分頁優(yōu)先級高于detail自動分頁

Ellipse、Round Rectangle、Line、Rectangle:圖形

四個(gè)圖形控件:

  • Ellipse:橢圓
  • Round Rectangle:圓角方形
  • Line:橫線
  • Rectangle:方形

都可組合其他控件,但操作過復(fù)雜,不推薦

示例:

QQ截圖20200928105927

Static Text:靜態(tài)文本

靜態(tài)文本,不具備自擴(kuò)展能力,意思是框子有多大,顯示的內(nèi)容就多大,多余的內(nèi)容不顯示

示例:

image-20200928110433029

QQ截圖20200928110506

預(yù)覽:

QQ截圖20200928110553

Text Field:文本域

文本域

  • 具備自擴(kuò)展能力,不管框子多大,都會完整顯示
  • 具備使用數(shù)據(jù)參數(shù)能力,使用方法:$F{導(dǎo)入的字段名}

文本域?qū)懛ǎ?/strong>

點(diǎn)擊屬性中的Text Field Experssion可對文本域進(jìn)行編輯

QQ截圖20200928112752

字符串需要放到""

  • 字符串需要放到""中
  • 可使用加號(+),進(jìn)行字符串拼接
  • 調(diào)用Paramters:$P{參數(shù)名}
  • 調(diào)用Fields:$F{數(shù)據(jù)庫字段名}
  • 調(diào)用Variables:$V{變量名}
  • 可使用基礎(chǔ)運(yùn)算,如三元運(yùn)算

使用自擴(kuò)展,需改變兩個(gè)屬性:

image-20200928111508904

示例:

image-20200928113003603

預(yù)覽:

image-20200928113037254

Image:圖片

圖片,可選本地文件或者網(wǎng)絡(luò)URL,一般使用網(wǎng)絡(luò)URL

示例:

QQ截圖20200928154120

  • Image Expression:就像文本域一樣使用,可從數(shù)據(jù)庫拿數(shù)據(jù)填充,放入圖片URL
  • Scale Image:選擇Real size或者Real height會保持原圖的比例,選擇Retain Shape會隨著圖片框的大小改變圖片的大小
  • Using Cache:啟用圖片緩存,可以看到URl內(nèi)的圖片樣子

預(yù)覽:

QQ截圖20200928154755

Barcode:條形碼

條形碼,一般選取Code128條形碼

QQ截圖20200928161101

  • Code Expression:就像文本域一樣使用,可從數(shù)據(jù)庫拿數(shù)據(jù)填充,放入條形碼內(nèi)容
  • Orientation:條形碼方向,none就是正方向,left就是把條形碼順時(shí)針轉(zhuǎn)90°,以此類推
  • Text Position:條形碼內(nèi)容顯示,Bottom就是在條形碼下方顯示,None就是不顯示
  • Module Width:條形碼的長度,是以倍數(shù)增加的長度

示例:

QQ截圖20200928161846

table 和 subreport之后介紹

連接數(shù)據(jù)庫-使用table與subreport

導(dǎo)入驅(qū)動

1.尋找驅(qū)動

以導(dǎo)入Oracle驅(qū)動為例,Mysql驅(qū)動iReport已存在

首先去能連入生產(chǎn)數(shù)據(jù)庫的項(xiàng)目看看,用的是哪個(gè)版本的驅(qū)動,然后從Maven倉庫中找到Oracle驅(qū)動的jar包

比如我這個(gè)版本的Oracle驅(qū)動

image-20200928164457423

懶的找的童鞋去maven官網(wǎng)下個(gè)jar包:https://mvnrepository.com/artifact/com.oracle/ojdbc6/11.2.0.3

2.放入bin

把驅(qū)動包放到iReport的安裝目錄\iReport-5.0.0\bin

3.點(diǎn)擊左上角的工具——》選項(xiàng)——》Classpath——》Add JAR

image-20200928170326122

4.找到剛剛放入bin的驅(qū)動包添加進(jìn)去,確定,驅(qū)動添加完成

創(chuàng)建連接

1.點(diǎn)擊此圖標(biāo)

QQ截圖20200928170134

2.點(diǎn)擊new——》Database JDBC connection

QQ截圖20200928170903

3.選擇剛剛導(dǎo)入的oracle驅(qū)動,URL、用戶名、密碼自行填寫

QQ截圖20200928171026

4.點(diǎn)擊Test,連接成功則Save,失敗則是某個(gè)環(huán)節(jié)出問題了

QQ截圖20200928171956

5.選擇此連接,創(chuàng)建連接成功

編輯sql語句

有了連接,我們就需要查詢數(shù)據(jù)庫的sql語句了,這里分為主查詢和子查詢,都可要參數(shù)可不要參數(shù)

主查詢

1.點(diǎn)擊上方的按鈕

QQ截圖20200928171617

2.添加sql

我連接的是本地oracle,查的表是一張測試用戶表

可以點(diǎn)擊 Read Fields 查看查詢到的字段

這個(gè)sql是個(gè)全查sql且沒有條件,我們給它加一個(gè)name條件

QQ截圖20200928172713

3.添加條件和其參數(shù)

image-20200928173009312

name是String類型的,新建的參數(shù)也需要此類型

QQ截圖20200928173136

點(diǎn)擊ok,完成一個(gè)帶條件的主查詢sql語句

4.測試主查詢

主查詢一般用于整體布局中的參數(shù)填入,也就是可以把剛剛查出來的那幾個(gè)字段的值插入到我們設(shè)計(jì)的頁面中

可以從Fields看到可以選擇的字段名

QQ截圖20200929090455

用Text Field來插入字段值

QQ截圖20200929090910

預(yù)覽:

因?yàn)樾枰獋魅雲(yún)?shù),所以預(yù)覽需要一個(gè)name的條件參數(shù)值

QQ截圖20200929090943

輸入?yún)?shù)后,可得到預(yù)覽頁面

QQ截圖20200929091213

子查詢(較難)

很多時(shí)候并不是一個(gè)主查詢的一個(gè)sql語句就能查到所有想要的數(shù)值,那么可以新建多個(gè)子查詢

子查詢同樣可以通過條件參數(shù)來查詢,可以新建一個(gè)條件參數(shù),也可以使用主查詢同名的條件參數(shù)

1.新建一個(gè)dataset

QQ截圖20200929091815

一般是單數(shù)據(jù)源,所以選擇創(chuàng)建空的dataset

QQ截圖20200929092014

2.設(shè)置sql

QQ截圖20200929092313

還是熟悉的界面,還是熟悉的操作,傳入的參數(shù)名取和主查詢一樣的名字——name,這樣只需要輸入一次name的值子查詢也可查詢完畢

特別注意的是,記得給字段取別名,不要都叫一樣的名字,不僅自己容易混淆,程序也容易出錯(cuò)

QQ截圖20200929094015

3.使用子查詢——table

例子中的主查詢返回值只有0個(gè)或1個(gè)對象,而子查詢可以返回多個(gè)對象(列表),這時(shí)候可以使用table了

拖一個(gè)table到一個(gè)單獨(dú)的detail中,這樣detail會自適應(yīng)table

選擇table所用的dataset,剛剛的創(chuàng)建t1

QQ截圖20200929095104

選擇需要顯示的字段,一般全選

QQ截圖20200930094416

選擇連接的數(shù)據(jù)源,一般是一個(gè)數(shù)據(jù)源,也就是創(chuàng)建連接中的那個(gè)數(shù)據(jù)源

QQ截圖20200930094516

如果是第一次創(chuàng)建table,勾上這個(gè),會為表頭\表尾、表列頭\表列尾、表邊框、表內(nèi)容各創(chuàng)建一個(gè)style

QQ截圖20200930094742

表介紹

QQ截圖20200930095102

Table Header\Table Footer:表頭\表尾Column Header\Column Footer:表列頭\表列尾Detail:表內(nèi)容

style介紹

QQ截圖20200930094940

table:表整體(相當(dāng)于圍了一圈邊框)table_TH:表頭\表尾(第一行/最后一行)table_CH:表列頭\表列尾(第二行/倒二行)table_TD:表內(nèi)容(除此之外的行)

最終是這樣展現(xiàn)的

QQ截圖20200930100429

終極丑有木有?明明只想要最原始的表格就好了,太花花綠綠了

刪除除了有字段的所有其他行

QQ截圖20200930101028

將Table、Column Header、嵌入的Text Field、Static Text的樣式全部選擇為table_TD,再拉長Text Field、Static Text占據(jù)列長

QQ截圖20200930101445

此時(shí)表就創(chuàng)建好了,這個(gè)表是根據(jù)子查詢dataset t1的數(shù)據(jù)來填入信息的,t1是需要傳入一個(gè)參數(shù)的,這個(gè)參數(shù)的值我們需要去指定,右鍵Table——》Edit Table datasource

QQ截圖20200930113924

t1子查詢需要一個(gè)name參數(shù)的值,這個(gè)值可以從輸入?yún)?shù)(如 P N A M E ) 取 , 也 可 以 自 己 去 設(shè) 定 ( 如 " c i c h e n g " ) , 還 可 以 從 主 查 詢 的 字 段 值 中 取 ( 如 P{NAME})取,也可以自己去設(shè)定(如"cicheng"),還可以從主查詢的字段值中?。ㄈ?PNAME)取,也可以自己去設(shè)定(如"cicheng"),還可以從主查詢的字段值中取(如F{NAME})

QQ截圖20200930123320

布局:

QQ截圖20200930123548

預(yù)覽:

QQ截圖20200930123621

表格這個(gè)屬性記得改成這個(gè):

可以達(dá)到?jīng)]數(shù)據(jù)也可以有表頭的效果

image-20200930130327417

子模板subreport

相當(dāng)于再新建了一個(gè)模板,但主模板包含這個(gè)子模板

子模板本身也具備所有主模板的特性,擁有主查詢和子查詢,層層套娃

示例暫且先鴿了,因?yàn)橐陨蟽?nèi)容足以完成模板的布局與樣式,之后會繼續(xù)更新~

本人原創(chuàng)內(nèi)容,如需轉(zhuǎn)載,請聯(lián)系一下我~

到此這篇關(guān)于非常全面的IReport的使用的文章就介紹到這了,更多相關(guān)IReport使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • WebSocket整合SSM(Spring,Struts2,Maven)的實(shí)現(xiàn)示例

    WebSocket整合SSM(Spring,Struts2,Maven)的實(shí)現(xiàn)示例

    這篇文章主要介紹了WebSocket整合SSM(Spring,Struts2,Maven)的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • Java文件操作之按行讀取文件和遍歷目錄的方法

    Java文件操作之按行讀取文件和遍歷目錄的方法

    這篇文章主要介紹了Java文件操作之按行讀取文件和遞歸遍歷目錄的方法,遍歷目錄文中分別舉了遞歸和非遞歸的例子,需要的朋友可以參考下
    2016-03-03
  • Java實(shí)現(xiàn)簡單班級管理系統(tǒng)

    Java實(shí)現(xiàn)簡單班級管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)簡單班級管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Java并發(fā)應(yīng)用之任務(wù)執(zhí)行分析

    Java并發(fā)應(yīng)用之任務(wù)執(zhí)行分析

    這篇文章主要為大家詳細(xì)介紹了JavaJava并發(fā)應(yīng)用編程中任務(wù)執(zhí)行分析的相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-07-07
  • springcloud連接遠(yuǎn)程nacos失敗顯示localhost服務(wù)連接失敗的問題解決

    springcloud連接遠(yuǎn)程nacos失敗顯示localhost服務(wù)連接失敗的問題解決

    這篇文章主要介紹了springcloud連接遠(yuǎn)程nacos失敗顯示localhost服務(wù)連接失敗的問題解決,文中有詳細(xì)的代碼示例供大家參考,對大家解決問題有一定的幫助,需要的朋友可以參考下
    2024-03-03
  • 詳解Java的Struts框架中注釋的用法

    詳解Java的Struts框架中注釋的用法

    這篇文章主要介紹了詳解Java的Struts框架中注釋的用法,Struts是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下
    2015-12-12
  • 淺入淺出的講解Spring循環(huán)依賴問題

    淺入淺出的講解Spring循環(huán)依賴問題

    循環(huán)依賴其實(shí)就是循環(huán)引用,也就是兩個(gè)或則兩個(gè)以上的bean互相持有對方,最終形成閉環(huán),下面這篇文章主要給大家介紹了關(guān)于Spring循環(huán)依賴問題的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-10-10
  • Java如何實(shí)現(xiàn)一個(gè)簡化版的Stream框架

    Java如何實(shí)現(xiàn)一個(gè)簡化版的Stream框架

    這篇文章主要為大家詳細(xì)介紹了一個(gè)簡化版的 Stream 實(shí)現(xiàn),展示了如何通過延遲執(zhí)行來處理數(shù)據(jù)流,感興趣的小伙伴可以跟隨小編一學(xué)習(xí)一下
    2024-10-10
  • Java從零編寫吃貨聯(lián)盟訂餐系統(tǒng)全程講解

    Java從零編寫吃貨聯(lián)盟訂餐系統(tǒng)全程講解

    這篇文章主要介紹了Java訂餐系統(tǒng),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-12-12
  • Java HttpClient技術(shù)詳解

    Java HttpClient技術(shù)詳解

    Http協(xié)議的重要性相信不用我多說了,HttpClient相比傳統(tǒng)JDK自帶的URLConnection,增加了易用和靈活性(具體區(qū)別,日后我們再討論),它不僅是客戶端發(fā)送Http請求變得容易,而且也方便了開發(fā)人員測試接口(基于Http協(xié)議的),即提高了開發(fā)的效率,也方便提高代碼的健壯性
    2021-10-10

最新評論

江北区| 东明县| 宁都县| 清新县| 西充县| 西乌珠穆沁旗| 萝北县| 怀安县| 犍为县| 库车县| 乐至县| 额尔古纳市| 大英县| 紫阳县| 锦州市| 大方县| 榆树市| 建瓯市| 田东县| 安图县| 襄垣县| 永修县| 沙湾县| 青冈县| 塔河县| 沿河| 沈阳市| 乌兰察布市| 琼海市| 区。| 苏尼特右旗| 望奎县| 伽师县| 辰溪县| 东兰县| 寿光市| 隆德县| 龙岩市| 彭阳县| 苏州市| 靖西县|