搜尋老魚筆摘(本網誌及所屬協作平台)

2008-11-28

Mac OS X 10.5 - JDK 1.6 & Netbeans 6.5 開發環境

原本以為單純以為替老魚長年相處的老馬 iBook G4 1.2G (Power PC - PPC)換上 SSD 32GB 後,
IO的速度快了, 可以再陪老魚再走個幾年, ... 一廂情願的想法, 卻搞的自己不敬於舞台之上 ...
從失敗中檢討自己, 並在前幾日老魚購入了新的 Apple MacBook (Core 2 Duo 2G) - RAM 2GB,

使用了幾天後才深覺與老魚的舊iBook+SSD仍不及MacBook的整體效能,
在單純的 Java 應用還感受不到差別, 一跑起 JavaEE 應用時, 可真是天與地之差 !
題外話, 2GB RAM 還是不夠吃, JavaEE 的開發測試平台需要再大點,
過幾天來去加到4GB RAM.

回到主題, Mac OS X 10.5.5 在預設的情況下是使用 Java SE 5.0,
要更換到 Apple Java 1.6 需要以下二個條件:
  1. CPU 必須為 Intel C2D 64 bit
  2. 使用 Mac OS X 10.5 版本
再來打開 [Applactions] -> [Utilities] -> [Java]
(中文:[應用程式]->[效用工具]->[Java])
點擊[Java Preferences]後, 在[General]中的二個小視框用 mouse 將 "Java SE 6"均拉到頂部.
(如下圖點圖放大)


再來打開 Terminal (終端機)測試# java -version (同上圖所示)

KuoMB:Users ChaoYi$ java -version
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06-153)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_07-b06-57, mixed mode)

從上面的訊息可以看出 Mac OS 10.5 使用的是 64-Bit Server VM, 吃的 RAM 會重些,
但有利於 Java EE 的應用測試.

再來就是 NetBeans 6.5 在預設的情況下就算您做了上述的過程,
NB 仍會用 JRE 1.5 來跑, 這時必須手動去改 Netbeans 的組態檔, 位於
/Applications/NetBeans/NetBeans 6.5.app/Contents/Resources/NetBeans/etc
使用 vim 等編輯器來修改 netbeans.conf :

# Default location of JDK, can be overridden by using --jdkhome:
#
netbeans_jdkhome=/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Home
netbeans_jdkhome=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home


再啟動Netbeans 6.5 時即可看到如下的畫面


2008-11-23

遇見佛理"放下我執"的新解 - MuMuHug 是個"佛"

若以色見我,以音聲求我,是人行邪道,不能見如來。
- 釋迦牟尼(金剛經)

前些天老魚在網路上看到這張可愛的圖, 索性就拿來當即時通的大頭照 ...

之後老魚就想那應該是動畫片的人物才是, 便到 YouTube 找看看 ...
原來它叫 MuMuHgu , 還有自己的中文官網~呵
在 YouTube 老魚看了三則短篇動畫後, 決定分享當中的感覺!

先來小談一下佛學中"我執"的含意:
以心理學來說, 最簡單的的例子就是"佔有慾"/自私, 不限是有形或無形的事物,
因此就會產生不同程度的傷害到他人的有形的體與無形的心,
要放下我執真的很難, 所以身為人的我們, 也只能多提醒自己, 多幫人著想 !
這也是佛學中認為能真正放下我執者即是位"佛".

來看看這三則短篇動畫, 看看 MuMuHug 中不需言語的"放下我執"的喜悅感 !

1.漂移來去的小鴨 (無住生心::無執著而生喜悅之心)


2.寄居者的新家 (捨的喜悅)


3.再見鳥兒 (活在當下的喜悅, 放下我執即無失去時的難過)

2008-11-21

(分享製作圖) Java Collections (集合) Frameworks - Part 1

巧智不如拙誠 !
用最大膽的"愚"誠來矮化自身的能力, 得失之間,
少了許多不必要的煩鎖事物,
更可免除對"外在名利的角逐",
免於遺忘自我研究學習的初衷 !
- 老魚的"老子道德經"新解

(點圖放大再收藏)



我們經常使用著 Java SE 集合 API ..., 但當您開始邁向 SCJD 的水準時,
您必須學習跳脫被"框住"的腦袋, 尋找更寬廣的視野 ...
就如星雲大師的一句話 :
"一個人的心量有多大, 成就就有多大 !"

如果您只是為了考認證而遷就著那考試範圍學習,
那老魚只能說恭喜您, 遲早都可以 Pass,
但 ... 您不一定能勝任實務的工作 ! 舉列來說 SCJP 的認證裡,
JDBC 不考, 反加重在考 Thread ..., 對一個剛踏入社會的新鮮人來說,
是乎不太需要太多"雲端"和太過理想化, 需要更務實的新戰士~呵

當我們熟習了原有 Java SE SDK 中的 Java Collections Framework 的使用後,
就會開始感到受到限制, 這時也要開始告訴自己要"飛", 嗯 ...
Java SE 的內容不是最棒的, 只是個通用標準 !
一定有更好更適合的 API Library's 可以勝任這些工作, 開發者不應受限制 ...

在 Java SE 以外, 目前有著下列二個經常被廣泛使用的 Java 集合類 API,
且同以 Apache 授權方式發佈:
  1. Apache Common Collections -
    http://commons.apache.org/collections/
  2. Google Collections Library -
    http://code.google.com/p/google-collections/

這二者最大的差別在於 Apache Common Collections,
不使用 JDK 1.5 的 Generic(泛型), 較適合用於 JDK 1.4 以下的開發環境.
Google-Collections 則剛好補足這點, 運用於 JDK 1.5 以上並運用 Generic,
且 Google 內部有許多的產品都使用者它哦.

JBoss 4 + EJB 3 在 Netbeans 6.5 中環境的設定

老魚先前礙於某些原因不方便介紹其它同是開源的 Java EE 應用伺服器,
不過現在老魚身上這個禁令解除了~今天我們來看 - JBoss

http://www.jboss.org/
由 RedHat 公司收購後持續發展的 Java EE Server, 經過不斷的發展,
有 JBoss 所延伸的相關產品, 產生了完整的 Java 企業架構的完整應用,
小至與 IDE 發開工具 Eclipse 的整合, 大到 SOA , ESB, jBPM, SSO ...
非常的健全的 Java 平台應用.

首先我們先取得最新的 Netbeans 6.5 正式版,
http://www.netbeans.org/downloads/index.html
選取 "Java" 這個內容版約 200 MB, 並進行安裝.

之後我們前往 JBoss 取得下載 EE AS
JBoss Application Server Downloads
目前 JBoss 5 無法在 Netbeans 6.5 中順利整合,
我們選擇 JBoss 4 來下載後, 直接解壓縮到您想放置的位置即可.

再來我們於 Netbeans 6.5 中進行 Server 註冊, 如下圖在"Server"上按右鍵,


在下一步選取您解開的 JBoss 4 的頂層資料夾位置,
其餘步驟先套用預設值即可, 即可看到被新增的 JBoss,
點選 JBoss Application Server 再按右鍵, 您就可以看到配套的功能,
從啟動到 JBoss 控制台等等均提供可視化的支援.


再來我們快速的新增一個新的"Project",
在 Java EE 下選擇進行 EJB Module 開發,


我們就可以看到如下的可選項, JBoss 與 Java EE 5:


再來在這 project 的名稱上擊右鍵,
就可看到 SessionBean / MDB 可供開發的選項了.

2008-11-13

SUN TECH DAYS 2008-2009 - 老魚 JavaEE 講者之行

很多時候我們沒有完成一件事,那並不意味著我們不具備完成這件事的能力。
- 王竹語《微笑看人生》

大約在一個半月前, 突來一封主辦的 mail 給了老魚這個使命,
Sun Tech Day (Sun每年一次的技術日研討會)





老魚將在下週一 (2008-11-17 下午 14:00) 在台北主講企業應用的議題之一
(來張老魚的簡報首頁圖~呵)


議程時間短, 但要能表現出這二個內容, 該如何體現傳達給在座的技術師們,
這果然讓老魚整整思索一直從接到任務至今, 但老魚對自己說 ...
  • 事事難盡人意, 但求無愧我心 ! 用心做好它 !
  • 直到今天剩下不到 4天還是不斷修改簡報內容, 只願能正確傳達當中的要義.
  • 且老魚心想這 Blog 不也是繞著這議題在持續撰寫中, 自嘲自己說: 老魚會做好"售後服務"的 Blog 持續內容, 必竟 Java EE 也是老魚研究學習的主要議題.

2008-11-12

(Ubuntu 8.10) GlassFish v3 Prelude & PostgreSQL Connection Pool

子曰:學如逆水行舟,不進則退。

GlassFish v3 Prelude (GFv3)
是一個可用於正式服務的 Java EE 開源碼應用伺服器,
在幾天前正式發佈, 當中擁有不少新的特性例如 HK2, OSGi ...,
但最吸引老魚的莫過於 v3 是老魚當前研究主題 Java EE 6 新子規範的實作測試平台.

老魚其實很想用力寫教學..., 可惜本身並非專職研究員, 只能盡力分享給大家!
本篇把重點擺在企業應用...當我們需要一個高承載的應用伺服器時,
一定也會考量到後端資料庫是否也能有效的利用,
所以也就會對使用到連線池的實作產了需求, 在這幾點考量下,
老魚近日應客戶的需求, 建置了以下的系統規格:
  • 作業系統: GNU/Linux Ubuntu 8.10 Server
  • Java EE Server: GlassFish v3 Prelude
  • 資料庫系統: PostgreSQL 8.3.5
如何在 Ubuntu 中正確安裝 PostgreSQL 老魚有交待過了~呵
你可以在上面的社群中找到相關知識, 至於 GlassFish 的安裝,
在本 Blog 中也說了不少, 今天我們來談 Connection Pool (連線池),
先來看看貼心的 i10n 正體中文的管理介面
(點圖可放大)


首先請正確的下載 PostgreSQL JDBC Driver,
並放置到您安裝 GlassFish v3 資料夾中如下的位置
  • /glassfishv3-prelude/glassfish/lib
再來當然先在 PostgreSQL 中開設好角色與資料庫囉~

再來我們切換到 GFv3 的管理者介面, 點選資源(Resources),
就可以看到連結池(Connection Pool)的設定頁:
(如下圖)


按了新增後, 在如下的畫面除了給予一個大吉大利的"好名字"外,

最重要的是點選下列參數後, 再進行下一步 ...
  • javax.sql.ConnectionPoolDataSource
  • 您想要的 DBMS (老魚我可沒說只能用 PostgreSQL 哦~呵)

在上圖步驟2 共分成上下二大段內容, 上段可以保持預設值,
除非您對 Connection Pool 的需求效能分析有概念,

再來最重要的就是最下方的設定值:

上圖中用小紅框標記的部份是必填的, 填錯也無妨,
在完成後測試不通可以再修正.

這時 GlassFish 應該會要求重新啟動 EE Server 來使值生效.

在完成後就會有如下的新子點產生, 這畫面中最重要的就是 "Ping",
用來測試是否能根據您給的值與JDBC Driver的正確性.


若是連線失敗呢.. 那切換到"其它特性", 可能是屬性值給錯了哦~

2008-11-04

(公告)正式對外分享 Java MMORPG 遊戲伺服器研究

上善若水,水善萬物而不爭,處眾人之所惡。故幾於道。
- 老子道德經

老魚不時接到寺外人士的要求 ...
要求開放老魚 Blog 中右上的一個私人研究團隊連結內容:
在今天經過這團隊成員們的認同與共識, 我們正式對外公開,
我們除了持續分享開發經驗外,
並且籍此來尋找更多網路上想參與學習研究的朋友們加入 !!!

先來感受一下遊戲畫面~呵


這個團隊的目標:
  • 這個網站集結對 Java MMORPG 線上遊戲伺服器開發案有所想學習與了解的中文語系的同好們 !
  • 透過對 L2J 的專案開發內容來增進對 Java 技術學習與獲取大型專案 MMORPG 實作伺服器開發的實際參與經驗...
我們更為此新設立了一個交流開發討論的論壇, 歡迎您來加入與參與開發:
期待您參與我們的團隊, 結識更多網路上的朋友們 !!!

熱門文章

大智若魚::人生處處是道場-站內SEO參考標籤雲