部落客廣告聯播

2012年3月5日 星期一

JSON樹狀編輯器


在開發使用JSON格式的程式時有時會需要自己手寫"組裝"些JSON測試資料, 但在這麼多的大括號和雙引號常常會讓人眼花, JSON和XML其實一樣都是階層的結構資料,
所以有一個樹狀式的編輯器,相對會方便一些,這裡推薦一個可以在瀏覽器執行的樹狀編輯器,
只要新增子節點,填入資料等反覆操作 就可以 產生所要的JSON資料,詳請閱: http://www.thomasfrank.se/json_editor.html

2011年12月23日 星期五

Log4j File Appender: TimeAndSizeRollingAppender

Apache Log4j 內建提供的Rolling File Appender還不夠合用嗎?

目前Log4j內建有:

Extra提供有:

還不夠合用?  可以試試下面的 TimeAndSizeRollingAppender : Time-and-Size Rolling, Scavenging Appender (http://www.simonsite.org.uk/)


另外log4j.xml設定檔範例可見:
http://wiki.apache.org/logging-log4j/Log4jXmlFormat

2011年11月14日 星期一

XmlUnit

寫JUnit測試時,若想針對XML dom做測試、比較等處理,XmlUnit是很稱職的Library呀~
只不過比較可惜的是, 現仍只支援JUnit1.3版~

更多XmlUnit的相關資訊請參考:  http://xmlunit.sourceforge.net/

另外xmlUnit還有for .NET版本喔....

2011年8月12日 星期五

霸道~


今天心血來潮,想到好久沒登入AdMob,想說去看看有沒有人用我寫的Android軟體,展示率和點閱率不知道如何?

沒想到一登入就看到這畫面:
您的帳戶因為無效活動或屢次違反政策,目前已經遭到停權。










說真的我也不是靠這賺錢(事實上要靠這個賺錢 先餓死吧),寫Android程式到目前為止也是玩票性質, 但我的AdMob帳號被鎖了我竟然一點也不曉得,到現在才知道XD

想了解到底我做了甚麼(是我嗎?)會被鎖?
沒想到Google已經先聲明了「由於我們必須保護專利偵測系統,因此無法提供這些帳戶活動的任何相關資訊給發佈者」....  啥跟啥??

說真的  給人挺霸道的感覺~
申訴?  七刀  我一點都不想再浪費時間在上面~  我倒還寧願來這寫寫我的怨言~  吐吐怨氣~

我對Google印象不差~
但是就事論事~   如果想在Google身上鑽到一塊半毛,那就先體驗它的霸道吧~

2011年8月11日 星期四

如何調整Android Tab元件的高度~

使用TabActivity或TabHost時,若想調整分頁(Tab標籤)高度時,可使用下列程式碼:


//reduce tab height
for(int i=0;i<tabHost.getTabWidget().getChildCount();i++){
	        ((TextView)((RelativeLayout)tabHost.getTabWidget().getChildTabViewAt(i)).getChildAt(1)).setHeight(30);
	        tabHost.getTabWidget().getChildAt(i).getLayoutParams().height = 40;
}

2011年8月10日 星期三

Jenkins CI 及 關於CI的兩篇文章

最近CI真是夯~ 好多國內外文章都在討論CI~

繼上篇「Continuous Integration與Hudson」一文~

今天再推兩篇文章:

然而,還發現了一件事:
原Hudson的建立者因為與Oracle內部的意見不一,所以另起爐灶建立了Hudson的分支 -- Jenkins CI 專案 (話說兩個專案的圖示都是以管家作為標誌, 一個白頭髮, 一個前額禿)~


選Hudson 還是選 Jenkins?  看看別人怎麼說吧:  Hudson vs Jenkins CI?




如何設定Android TabHost元件的Tab文字顏色??

如何設定Android TabHost元件的Tab文字顏色??

詳請參考:

http://stackoverflow.com/questions/5155441/android-tab-text-color

2011年8月5日 星期五

Continuous Integration與Hudson


小弟不才,一直只知道埋頭寫程式便不去思索在軟體開發中其他重要的事情是甚麼,就像閉門造車一樣....

有幸在今年的JavaTwo 2011聽了MaoYang的「使用Hudson打造你專屬軟體建構機器人」一課,雖然課程短短一小時,但讓我初步了解了持續整合(Continuous Integration;CI)的概念,與Hudson這個OpenSource的CI Server。



EasyMock + JUnit4 做單元測試


詳請參見良葛格的JUnit學習筆記:
http://caterpillar.onlyfun.net/Gossip/JUnit/EasyMock.html

更詳細的使用說明可參考官網:

http://easymock.org/EasyMock3_0_Documentation.html


2011年7月31日 星期日

Android: 如何在TabActivity裡面開啟Activity?


在設計Android程式時,我們使用了(繼承)TabActivity,以實現有分頁的畫面。
今天我們在分頁裡面有一個ListView列表元件,我們希望點選了某個ListItem時會出現另個Activity畫面(並且是在該Tab中),接著我們按下手機上的返回按鈕時,畫面又會回到剛剛的ListView列表的畫面,這該如何時做呢?

這裡有一個很詳盡的範例可參考:
How you can open Activities in tabActivity(Nested activities)

2011年6月10日 星期五

使用Eclipse配合AXIS2來建立WebService (Service及Client)

用Eclipse來建立WebService真的是很方便又簡單,下列這篇文章介紹了如何使用Eclipse配合AXIS2來建立WebService (Service及Client):
http://hans0713.blogspot.com/2008/07/eclipsewebservice.html

建立完WebService後,若需要整合AXIS2與Spring Framework,可參考官方文件:
http://axis.apache.org/axis2/java/core/docs/spring.html

2011年5月17日 星期二

Struts 2 tags OGNL裡的單字元字串

Struts2 的OGNL真的是滿難用的東西,
但是用了Struts2的tag就不得不碰,
在使用OGNL時若需比較單一字元內容的字串時,
請參考:
http://struts.apache.org/2.x/docs/why-wont-the-if-tag-evaluate-a-one-char-string.html