<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sky's blog

    我和我追逐的夢(mèng)

    常用鏈接

    統(tǒng)計(jì)

    其他鏈接

    友情鏈接

    最新評(píng)論

    2010年11月30日 #

    使用javap命令查看編譯版本信息

         摘要: 之前遇到幾次現(xiàn)場(chǎng)故障,都是和class文件有關(guān),比如版本不兼容造成Bad Version錯(cuò)誤之類,需要檢查class文件的編譯版本信息。 今天無(wú)意中發(fā)現(xiàn), jdk自帶的javap 命令其實(shí)可以方便的搞定這個(gè)事情  閱讀全文

    posted @ 2013-02-17 15:50 sky ao 閱讀(1696) | 評(píng)論 (0)編輯 收藏

    編碼最佳實(shí)踐(6)--那些年,我們一起建的索引

         摘要: 前幾次的編碼最佳實(shí)踐系列,我們都著眼于Java代碼,今天我們換個(gè)話題,看看另外一個(gè)領(lǐng)域,和Java代碼大相徑庭的SQL。   閱讀全文

    posted @ 2013-01-04 12:08 sky ao 閱讀(2192) | 評(píng)論 (1)編輯 收藏

    編碼最佳實(shí)踐(5)--小心!這只是冰山一角

         摘要: 本期的案例依然是來(lái)自實(shí)際項(xiàng)目,很尋常的代碼,卻意外遭遇傳說(shuō)中的Java"內(nèi)存溢出"。   閱讀全文

    posted @ 2012-09-06 15:09 sky ao 閱讀(3153) | 評(píng)論 (1)編輯 收藏

    解決drupal的globalrediect模塊的重定向循環(huán)問(wèn)題

         摘要: 昨晚繼續(xù)折騰俺的小站http://www.javauniversity.net,準(zhǔn)備給它加上SEO支持,安裝了SEO tools模塊和相應(yīng)的依賴模塊。

    結(jié)果安裝完成之后就陷入重定向循環(huán)了,每個(gè)頁(yè)面都被重定向到新地址,然后新地址再次被重定向。chrome瀏覽器會(huì)稍后報(bào)錯(cuò)說(shuō)太多重定向,而ie則傻傻的一直在死循環(huán)。   閱讀全文

    posted @ 2012-07-11 07:28 sky ao 閱讀(1573) | 評(píng)論 (0)編輯 收藏

    Java University 網(wǎng)站開通過(guò)程吐糟

         摘要: 折騰了兩天,終于將Java University這個(gè)站點(diǎn)開通,過(guò)程真不容易的,決定寫下來(lái)吐吐 糟,以紀(jì)念TIANCHAO和諧之光普照下P民的美好生活  閱讀全文

    posted @ 2012-06-24 10:34 sky ao 閱讀(1926) | 評(píng)論 (3)編輯 收藏

    編碼最佳實(shí)踐(4)--小心LinkedHashMap的get()方法

         摘要: 這是一個(gè)來(lái)自實(shí)際項(xiàng)目的例子,在這個(gè)案例中,有同事基于jdk中的LinkedHashMap設(shè)計(jì)了一個(gè)LRUCache,為了提高性能,使用了 ReentrantReadWriteLock 讀寫鎖:寫鎖對(duì)應(yīng)put()方法,而讀鎖對(duì)應(yīng)get()方法,期望通過(guò)讀寫鎖來(lái)實(shí)現(xiàn)并發(fā)get()。  閱讀全文

    posted @ 2012-06-18 12:31 sky ao 閱讀(4669) | 評(píng)論 (1)編輯 收藏

    編碼最佳實(shí)踐(3)--盡量重用昂貴的初始化對(duì)象

         摘要: 這里將要講述的是一系列的類似案例,都是在各個(gè)產(chǎn)品進(jìn)行performance tuning時(shí)被發(fā)現(xiàn)的,非常具有普適性。可以說(shuō)在日常開發(fā)中,有非常大的概率遇到相同或者類似的情形,因此需要對(duì)其保持警惕以便避免陷入類似的性能問(wèn)題。 我們從JAXBContext這個(gè)對(duì)象開始...  閱讀全文

    posted @ 2012-06-17 23:02 sky ao 閱讀(2701) | 評(píng)論 (0)編輯 收藏

    編碼最佳實(shí)踐(2)--推薦使用concurrent包中的Atomic類

         摘要: 這是一個(gè)真實(shí)案例,曾經(jīng)惹出碩大風(fēng)波,故事的起因卻很簡(jiǎn)單,就是需要實(shí)現(xiàn)一個(gè)簡(jiǎn)單的計(jì)數(shù)器,每次取值然后加1......  閱讀全文

    posted @ 2012-06-16 17:54 sky ao 閱讀(2897) | 評(píng)論 (5)編輯 收藏

    編碼最佳實(shí)踐(1)--小心"數(shù)據(jù)溢出"

         摘要: 最近在公司內(nèi)部做了一些收集和整理的工作,關(guān)于trouble shooting和performace tuning 中遇到并解決的典型問(wèn)題,做了一些內(nèi)部分享。我整理了一下,準(zhǔn)備陸續(xù)放上來(lái)分享給大家。

    這些問(wèn)題,單個(gè)看每個(gè)問(wèn)題都不算復(fù)雜或高深,但是都是在實(shí)際項(xiàng)目開發(fā)中出現(xiàn)并一度造成困擾的,而且?guī)в幸欢ǖ钠者m性,具體表現(xiàn)為不知道這些問(wèn)題的同學(xué)很容易在日常開發(fā)中中招。因此我們開了一個(gè)專題,叫做編碼最佳實(shí)踐,似乎名字起的有點(diǎn)大......

    先來(lái)看看第一個(gè),如何做compare。  閱讀全文

    posted @ 2012-06-09 23:27 sky ao 閱讀(3111) | 評(píng)論 (2)編輯 收藏

    解決Jetty下EL版本沖突的問(wèn)題

         摘要: 今天用jetty做嵌入式web container,來(lái)做web項(xiàng)目的integration test,結(jié)果發(fā)現(xiàn)出現(xiàn)在渲染使用EL表達(dá)式的jsp頁(yè)面時(shí)出現(xiàn)異常:

    javax.el.ExpressionFactory.newInstance()Ljavax/el/ExpressionFactory;

    檢查了一下,發(fā)現(xiàn)javax.el.ExpressionFactory.newInstance()這個(gè)方法是EL2.2版本之后才有的方法,而在EL2.1之中是沒(méi)有這個(gè)方法的,問(wèn)題很明顯:org.apache.jasper中試圖調(diào)用2.2版本的EL,當(dāng)時(shí)提供的EL的版本是2.1版本,所以解決的方式無(wú)非就是兩個(gè),要不降低org.apache.jasper的版本,要不提升el的版本。考慮到現(xiàn)在使用的jetty已經(jīng)是最新的版本8.1.2.v20120308,因此提升EL的版本為2.2更為合適。  閱讀全文

    posted @ 2012-05-25 07:11 sky ao 閱讀(11099) | 評(píng)論 (2)編輯 收藏

    解決jenkins執(zhí)行sonar時(shí)重復(fù)執(zhí)行兩次test的問(wèn)題

         摘要: 在jenkins上建立了一個(gè)job,通過(guò)標(biāo)準(zhǔn)的maven命令來(lái)執(zhí)行打包測(cè)試和上傳artifact到nexus倉(cāng)庫(kù)。隨后發(fā)現(xiàn)有些性能問(wèn)題:sonar的job執(zhí)行時(shí),需要重新update SCM,然后需要再次執(zhí)行test,之后才能進(jìn)行真正屬于sonar的任務(wù)如代碼檢測(cè)等。明顯update SCM 和執(zhí)行test是重復(fù)了原有job,純屬浪費(fèi)。這個(gè)重復(fù)執(zhí)行問(wèn)題隨著測(cè)試案例和測(cè)試執(zhí)行時(shí)間的增加,會(huì)越來(lái)越明顯。因此需要考慮消除這里的重復(fù)問(wèn)題,減少build的時(shí)間,并節(jié)約jenkins的資源。  閱讀全文

    posted @ 2012-02-14 14:53 sky ao 閱讀(5673) | 評(píng)論 (5)編輯 收藏

    搜索maven依賴的網(wǎng)站推薦

        使用maven填寫依賴的時(shí)候,常會(huì)遇到需要查一下groupId/artifactId和version,有時(shí)候還要看看有沒(méi)有新的版本更新。 

        原來(lái)一直用http://mvnrepository.com/ 這個(gè)網(wǎng)站來(lái)搜索,最近發(fā)現(xiàn)maven官網(wǎng)也提供了類似的功能,http://search.maven.org/。 

        簡(jiǎn)單試用了一下search.maven.org,功能基本和mvnrepository.com相同,而且界面更簡(jiǎn)潔友好。推薦使用。

    posted @ 2011-12-02 16:06 sky ao 閱讀(10620) | 評(píng)論 (4)編輯 收藏

    cloudfoundry介紹-(1)申請(qǐng)?jiān)囉?/a>

         摘要: cloudfoundry是vmvare新推出來(lái)的開源PaaS平臺(tái),我試用了一下,發(fā)現(xiàn)還是很不錯(cuò)的,申請(qǐng)過(guò)程很簡(jiǎn)單。發(fā)出來(lái)分享給大家,有需要的可以去申請(qǐng),畢竟可以支持java的免費(fèi)的空間實(shí)在太難得了。  閱讀全文

    posted @ 2011-06-11 13:52 sky ao 閱讀(10687) | 評(píng)論 (6)編輯 收藏

    解決gradle與sonar集成過(guò)程中的版本問(wèn)題

         摘要: 初學(xué)gradle,一切都還在摸索的過(guò)程中。今天剛剛試圖將之前基于ant + ivy的一個(gè)小項(xiàng)目轉(zhuǎn)移到gradle下,結(jié)果在和sonar集成時(shí)出現(xiàn)問(wèn)題.  閱讀全文

    posted @ 2011-05-15 13:12 sky ao 閱讀(5310) | 評(píng)論 (0)編輯 收藏

    easymock教程-自定義參數(shù)匹配器

         摘要: 雖然easymock中提供了大量的方法來(lái)進(jìn)行參數(shù)匹配,但是對(duì)于一些特殊場(chǎng)合比如參數(shù)是復(fù)雜對(duì)象而又不能簡(jiǎn)單的通過(guò)equals()方法來(lái)比較,這些現(xiàn)有的參數(shù)匹配器就無(wú)能為力了。easymock為此提供了IArgumentMatcher 接口來(lái)讓我們實(shí)現(xiàn)自定義的參數(shù)匹配器。  閱讀全文

    posted @ 2010-11-30 18:18 sky ao 閱讀(3149) | 評(píng)論 (0)編輯 收藏

    easymock教程-改變同一個(gè)方法調(diào)用的行為

         摘要: 在easymock中,對(duì)于mock對(duì)象的同一個(gè)方法,可以為每一次的調(diào)用定制不同的行為。在record階段easymock會(huì)精確的記錄我們錄入的行為,基于每一次的方法調(diào)用。  閱讀全文

    posted @ 2010-11-30 17:06 sky ao 閱讀(2538) | 評(píng)論 (0)編輯 收藏

    easymock教程-運(yùn)行時(shí)返回值或者異常

         摘要: 前面的教程中,我們看到easymock可以通過(guò)expect方法來(lái)設(shè)定mock方法的返回值或者異常,但是注意這些案例中設(shè)置的返回值都是在調(diào)用被測(cè)試的類的方法前就已經(jīng)確定下來(lái)的,即我們其實(shí)在測(cè)試類的代碼運(yùn)行前(實(shí)際是在EasyMock.replay()方法調(diào)用前)就已經(jīng)"預(yù)知"了返回結(jié)果。

    但是在某些情況下,我們可能無(wú)法預(yù)知返回值,比如我們需要根據(jù)輸入的參數(shù)值來(lái)決定返回什么,而這個(gè)參數(shù)可能無(wú)法在record階段獲得。因此在mock方法中我們無(wú)法在record階段就決定應(yīng)該返回什么。

    對(duì)于這種場(chǎng)景,easymock提供了IAnswer接口和andAnswer()方法來(lái)提供運(yùn)行時(shí)決定返回值或者異常的機(jī)制。  閱讀全文

    posted @ 2010-11-30 16:36 sky ao 閱讀(3607) | 評(píng)論 (0)編輯 收藏

    easymock教程-partial class mocking

         摘要: easymock中提供對(duì)于類的mock功能,我們可以方便的mock這個(gè)類的某些方法,指定預(yù)期的行為以便測(cè)試這個(gè)類的調(diào)用者。這種場(chǎng)景下被mock的類在測(cè)試案例中扮演的是次要測(cè)試對(duì)象或者說(shuō)依賴的角色,主要測(cè)試對(duì)象是這個(gè)mock類的調(diào)用者。但是有時(shí)候我們需要將這個(gè)測(cè)試類作為主要測(cè)試對(duì)象,我們希望這個(gè)類中的部分(通常是大部分)方法保持原有的正常行為,只有個(gè)別方法被我們mock掉以便測(cè)試。  閱讀全文

    posted @ 2010-11-30 14:23 sky ao 閱讀(3111) | 評(píng)論 (0)編輯 收藏

    主站蜘蛛池模板: a毛片成人免费全部播放| 亚洲乱码在线播放| 日日狠狠久久偷偷色综合免费| 国产卡一卡二卡三免费入口| 亚洲视频手机在线| 日韩免费一区二区三区在线播放| 亚洲网站免费观看| 在线观看视频免费完整版| 亚洲精品无码高潮喷水A片软| 国产免费观看a大片的网站| 四虎影视久久久免费观看| 亚洲人成无码www久久久| 又硬又粗又长又爽免费看| 亚洲日韩aⅴ在线视频| 久久免费福利视频| 亚洲综合色7777情网站777| 麻豆国产入口在线观看免费| 羞羞视频在线观看免费| 成人午夜亚洲精品无码网站| 九九美女网站免费| 亚洲乱码卡一卡二卡三| 成人a免费α片在线视频网站| 国产精品亚洲精品久久精品 | 人人揉揉香蕉大免费不卡| 亚洲AV午夜成人片| 亚洲第一成年免费网站| 免费国产黄网站在线看| 亚洲人成77777在线播放网站| jjizz全部免费看片| 最新亚洲人成无码网站| 亚洲av之男人的天堂网站| 成人免费毛片内射美女-百度| 免费在线观看亚洲| 亚洲日本精品一区二区| 精品免费国产一区二区三区| eeuss在线兵区免费观看| 亚洲成a人片在线观看播放| 亚洲国产高清精品线久久| 免费A级毛片无码专区| 国产成人亚洲精品播放器下载| 亚洲精品午夜国产VA久久成人|