2010-01-14 77 views
4

是否有人知道爲Java有共同但有乏味的實用方法做的事情是一個很好的通用框架...現代的Java框架公共

ObjectUtil.equalsOrBothNull(obj1,obj2) 

FormatUtil.formatName(String firstName String middleName, String lastName) 

AddressUtil.formatAddress(address) 

等等

好像我總是最終重新實現這些類。番石榴圖書館是我發現的最接近的東西。

http://code.google.com/p/guava-libraries/

+3

FORMATNAME()和formatAddress()將是高度依賴於語言環境,即使簽名。在許多文化中,沒有firstName/lastname的區別,或者有firstName/familyName/lastName或firstName/generationName/lastName或...並且所有這些變體通常都有關於如何編寫它們的不平凡規則。一旦你開始添加標題,那麼它會變得非常複雜。總而言之,這可能是值得一個圖書館本身的權利。 – 2010-01-14 09:56:50

回答

6

Commons Lang有很多,你可能會發現有用的工具。我在我的大部分項目中使用該庫。 This page有不同類別的基本概述。 StringUtils是我最常用的一種,但其他許多方法都很方便一兩次。 ObjectUtils具有您正在查找的無效安全的equals方法。

+3

Commons Lang(和Commons IO)+1。 OP要求提供一個「現代」圖書館,我想這意味着支持泛型和註釋。 Commons Lang不是一個問題(不是那裏,但不是必需的),但Commons Collections在沒有泛型的情況下會變得有點塵土飛揚。 – Thilo 2010-01-14 09:37:18

+2

@Thilo:在http://larvalabs.com/collections/ – skaffman 2010-01-14 09:40:57

+2

有一個通用收藏的通用端口。幾乎所有通用組件的下一個版本將被通用化,只是爲了讓您知道 – 2010-01-14 09:50:07