版本
JasperReports版本為4.0.1。
前言
因為本文的範例,有使用到Subreport,
所以如果閣下還不清楚如何製作Subreport,
請先閱讀如何在JasperReports中製作Subreport。
本文介紹分成二部份,分別是Java程式碼和iReport設計畫面。
報表預覽
在看程式碼和iReport設計畫面時,
先來看一下預期會產生的報表長相。
2011年5月27日 星期五
2011年5月14日 星期六
知足
說明
這首歌的詞是依照五月天的知足的曲來填,
但原詞中的"才發現 笑著哭最痛",
在我的詞裡,AB段都採用"才發現 笑著哭最痛 哦...哦..."的旋律來填。
歌詞
曲:五月天 - 知足
工作了五天 才到週末
兩天的休假 雖然不太夠
折騰了一週 總算能放鬆
不用設鬧鐘 不用怕睡過頭
看深夜的重播 無厘頭的幽默
過生活 要放空 要自由 要享受
多希望上天保祐我中大樂透
那折磨
那憂愁
我
才能擺脫
才能解脫
才關上了燈 靠上枕頭
突然我手機 就鈴聲大作
奪命連環call 讓神經緊繃
若漏接一通 會被罵到臭頭
凌晨時分工作 時間都被偷走
為生活 要沉默 要忍受 要低頭
結果我大樂透只中四百零頭
有on call
沒補休
我
做錯什麼
這樣整我
這首歌的詞是依照五月天的知足的曲來填,
但原詞中的"才發現 笑著哭最痛",
在我的詞裡,AB段都採用"才發現 笑著哭最痛 哦...哦..."的旋律來填。
歌詞
曲:五月天 - 知足
工作了五天 才到週末
兩天的休假 雖然不太夠
折騰了一週 總算能放鬆
不用設鬧鐘 不用怕睡過頭
看深夜的重播 無厘頭的幽默
過生活 要放空 要自由 要享受
多希望上天保祐我中大樂透
那折磨
那憂愁
我
才能擺脫
才能解脫
才關上了燈 靠上枕頭
突然我手機 就鈴聲大作
奪命連環call 讓神經緊繃
若漏接一通 會被罵到臭頭
凌晨時分工作 時間都被偷走
為生活 要沉默 要忍受 要低頭
結果我大樂透只中四百零頭
有on call
沒補休
我
做錯什麼
這樣整我
2011年5月10日 星期二
Design Principle - Open Close Principle
前言
本文要介紹的OCP,不是指證照考試中的Oracle Certified Professional,
而是OOD(物件導向設計)中的Open Close Principle(開放封閉原則)。
精神
系統的變動幾乎是必然的(沒有一成不變的系統,因為使用者是善變的),
開放封閉原則的精神在於面對系統的變動時,儘量不要修改既存的程式碼,
而是增加新的模組、類別來處理系統的變更。
本文要介紹的OCP,不是指證照考試中的Oracle Certified Professional,
而是OOD(物件導向設計)中的Open Close Principle(開放封閉原則)。
精神
系統的變動幾乎是必然的(沒有一成不變的系統,因為使用者是善變的),
開放封閉原則的精神在於面對系統的變動時,儘量不要修改既存的程式碼,
而是增加新的模組、類別來處理系統的變更。
2011年4月20日 星期三
Design Pattern - Prototype
Prototype Pattern顧名思義,
就是定義出一個prototype(原型),
然後利用這個原型,來產生物件。
產生的方式不同於Factory Pattern中使用的new,
而是利用clone(複製)。
因此,在介紹Prototype pattern之前,得先了解何謂clone。
就是定義出一個prototype(原型),
然後利用這個原型,來產生物件。
產生的方式不同於Factory Pattern中使用的new,
而是利用clone(複製)。
因此,在介紹Prototype pattern之前,得先了解何謂clone。
標籤:
工廠方法模式,
物件導向,
原型模式,
設計模式,
Design pattern,
Factory Method,
Java,
OO,
OOA,
OOAD,
OOD,
OOP,
Prototype Pattern
2011年4月19日 星期二
Design Pattern - Factory
Factory Pattern(工廠模式),在某些介紹中,會被稱為Simple Factory Pattern(簡單工廠模式),
看到名稱,就知道這個模式非常的簡單,很可能閣下已經不知不覺地使用工廠模式很多年了。
在介紹此模式之前,我們先來看一個沒有套用工廠模式的例子,然後設法將這個例子加以修改成工廠模式。
看到名稱,就知道這個模式非常的簡單,很可能閣下已經不知不覺地使用工廠模式很多年了。
在介紹此模式之前,我們先來看一個沒有套用工廠模式的例子,然後設法將這個例子加以修改成工廠模式。
標籤:
工廠方法模式,
工廠模式,
抽象工廠模式,
物件導向,
設計模式,
鬆散耦合,
Design pattern,
Factory Method,
Factory Pattern,
Java,
loose coupling,
OO,
OOA,
OOAD,
OOD,
OOP
2011年4月18日 星期一
Design Pattern - Bridge
本文要介紹的是bridge pattern(橋樑模式、橋接器模式、橋模式),
其精神在於降低abstraction和implementor之間的coupling(耦合度)
讓abstraction在延伸子類別時,
不用擔心因為implementor的改變,而須修改子類別的程式碼。
接下來,使用正反兩個例子來說明bridge pattern。
要設計Android上的遊戲叫做AngryBee,要怎麼做呢?
其精神在於降低abstraction和implementor之間的coupling(耦合度)
讓abstraction在延伸子類別時,
不用擔心因為implementor的改變,而須修改子類別的程式碼。
接下來,使用正反兩個例子來說明bridge pattern。
要設計Android上的遊戲叫做AngryBee,要怎麼做呢?
2011年4月13日 星期三
Design Pattern - Template Method
簡介
template method(範本方法)顧名思義,
就是定義好method的內容,當作範本,讓其他程式使用。
也就是說,利用抽象類別宣告要供子類別實作的method,
然後在不能夠被繼承的(例如final)method中呼叫須被實作的method。
這個final method就是所謂的template method。
其精神即透過繼承(inheritance)的方式,讓子類別能夠實作不同的邏輯區塊,
然後在父類別的final method中,依相同順序執行不同區塊的邏輯。
如此一來,不同的子類別,能夠實作各自的方法細節,
然後統一利用父類別的final method,來執行任務。
讓我們用例子,來解釋template method pattern.
範例說明
template method(範本方法)顧名思義,
就是定義好method的內容,當作範本,讓其他程式使用。
也就是說,利用抽象類別宣告要供子類別實作的method,
然後在不能夠被繼承的(例如final)method中呼叫須被實作的method。
這個final method就是所謂的template method。
其精神即透過繼承(inheritance)的方式,讓子類別能夠實作不同的邏輯區塊,
然後在父類別的final method中,依相同順序執行不同區塊的邏輯。
如此一來,不同的子類別,能夠實作各自的方法細節,
然後統一利用父類別的final method,來執行任務。
讓我們用例子,來解釋template method pattern.
範例說明
訂閱:
文章 (Atom)