摘要: 探索HTTP/2系列的第四篇文章,解讀了HTTP/2流的狀態(tài),以及狀態(tài)之間的轉(zhuǎn)化。(2016.10.09最后更新) 閱讀全文
2011年3月30日 #
摘要: 在本系列的第一篇文章中已經(jīng)介紹了HTTP 2協(xié)議,本文則將簡(jiǎn)述用于HTTP/2頭部壓縮的HPACK協(xié)議。(2016.10.01最后更新) 閱讀全文
摘要: 目前支持HTTP/2的服務(wù)器端與客戶(hù)端實(shí)現(xiàn)已有不少,本文分別以Jetty和curl作為服務(wù)器端和客戶(hù)端,描述了HTTP/2測(cè)試環(huán)境的搭建過(guò)程。本文還將使用這個(gè)測(cè)試環(huán)境去展示Jetty在實(shí)現(xiàn)HTTP/2時(shí)的一個(gè)局限和一個(gè)Bug。(2016.09.22最后更新) 閱讀全文
摘要: HTTP/2的協(xié)議包含著兩個(gè)RFC:Hypertext Transfer Protocol Version 2 (RFC7540),即HTTP/2;HPACK: Header Compression for HTTP/2 (RFC7541),即HPACK。RFC7540描述了HTTP/2的語(yǔ)義,RFC7541則描述了用于HTTP/2的頭部壓縮的格式。本文只涉及HTTP/2協(xié)議,本系列的后續(xù)文章將會(huì)涉及HPACK協(xié)議。(2016.10.13最后更新) 閱讀全文
摘要: 本文是Play OpenJDK的第二篇,介紹了如何突破JDK不允許自定義的包名以"java."開(kāi)頭這一限制。這一技巧對(duì)于基于已有的JDK向java.*中添加新類(lèi)還是有所幫助的。(2015.11.02最后更新) 閱讀全文
摘要: 計(jì)劃使Play OpenJDK成為一組介紹如何使用并參與OpenJDK項(xiàng)目的系列文章。本文是該系列的第一篇文章,它基于OpenJDK 8的源代碼介紹了構(gòu)建一個(gè)屬于自己的JDK方法。(2015.10.30最后更新) 閱讀全文
摘要: 本文是Java Magazine 201405/06刊中的一篇文章,也是文章系列"利用Java SE 8流處理數(shù)據(jù)"中的第二篇,它基于flatMap()和collect()介紹了Java流的高級(jí)用法(2014.08.15最后更新) 閱讀全文
摘要: 本文是Java Magazine 201403/04刊中的一篇文章,也是文章系列"利用Java SE 8流處理數(shù)據(jù)"中的第一篇,它概述了Java流的基本原理與基本應(yīng)用,是一篇很好的Java Streams API的入門(mén)文章。(2014.07.27最后更新) 閱讀全文
摘要: 本文是上周五(2014.05.02)才發(fā)布的美國(guó)2014年04月度非農(nóng)業(yè)就業(yè)報(bào)告中的概要部分,與軟件技術(shù)毫無(wú)干系。這份報(bào)告在出臺(tái)后的極短時(shí)間內(nèi)對(duì)外匯市場(chǎng)造成了極大影響,純粹是出于好奇看了一下這份報(bào)告,學(xué)到了不少英文行業(yè)名稱(chēng),以及英文在數(shù)字方面的用法。(2014.05.05最后更新) 閱讀全文
摘要: 本文是IBM developerWorks中的一篇介紹Java 8關(guān)鍵新特性的文章,它主要關(guān)注Lambda表達(dá)式和改進(jìn)的接口。(2014.04.19最后更新) 閱讀全文
摘要: 本文是稍早前java.net推薦的一篇博文,描述了Java流的8個(gè)有用的特性。(2014.03.02最后更新) 閱讀全文
摘要: 本文是發(fā)布在java.net上的一篇摘自于一書(shū)中的節(jié)選,介紹了使用Gradle構(gòu)建Java Web應(yīng)用的過(guò)程。剛剛接觸Gradle,看到了這篇小文,隨手譯了出來(lái):-) (2014.01.23最后更新) 閱讀全文
摘要: 本文是Java并發(fā)基礎(chǔ)實(shí)踐系列中的一篇,介紹了最簡(jiǎn)單的死鎖場(chǎng)景,并使用jstack產(chǎn)生的thread dump來(lái)查找死鎖。(2013.12.29最后更新) 閱讀全文
摘要: 在最新一期的Java Magazine中有一篇訪(fǎng)談,介紹了一個(gè)學(xué)習(xí)Java并發(fā)編程的動(dòng)畫(huà)應(yīng)用Java Concurrent Animated。該應(yīng)用以十分直觀的方式展示了Java并發(fā)工具包中的每一個(gè)重要組件,降低了學(xué)習(xí)Java并發(fā)編程的難度。(2013.12.07最后更新) 閱讀全文
摘要: 本系列的第三篇文章將以實(shí)現(xiàn)一個(gè)極簡(jiǎn)單的查找最大數(shù)的任務(wù)為例,分別給出了四個(gè)版本:1.順序執(zhí)行;2.基于傳統(tǒng)的Thread.join();3.基于并發(fā)工具包的Future;4.基于JDK 7引入的Fork/Join框架。(2013.10.25最后更新) 閱讀全文
摘要: 在本系列的上一篇中講述了三種退出并發(fā)任務(wù)的方式,但都是基于JDK 5之前的API。本篇將介紹使用由JDK 5引入的java.concurrent包中的API來(lái)退出任務(wù)。(2013.10.08最后更新) 閱讀全文
摘要: 計(jì)劃寫(xiě)一個(gè)"Java并發(fā)基礎(chǔ)實(shí)踐"系列,算作本人對(duì)Java并發(fā)學(xué)習(xí)與實(shí)踐的簡(jiǎn)單總結(jié)。本文是該系列的第一篇,介紹了退出并發(fā)任務(wù)的最簡(jiǎn)單方法。(2013.09.25最后更新) 閱讀全文
摘要: 本文是ThoughtWorks首席科學(xué)家Martin Fowler接受InformIT采訪(fǎng)時(shí)的訪(fǎng)談錄,談到了在ThoughtWorks工作的情況,對(duì)ThoughWorks感興趣的朋友們可以看看。(2013.08.23最后更新) 閱讀全文
摘要: Oracle OpenWorld 2013(上海)已經(jīng)結(jié)束,我全程參與了此次技術(shù)大會(huì)。本文是我參會(huì)的所見(jiàn)、所聞、所思與所感,有文,有圖,且無(wú)碼。(2013.08.03最后更新) 閱讀全文
摘要: 最近有點(diǎn)兒閑,看了一些文章,有了一些感觸,寫(xiě)成一篇小文。軟件世界真的變化很大,沒(méi)有永恒的終結(jié)者。今天的終結(jié)者,明天可能就會(huì)被別人終結(jié)。道理大家都懂,但現(xiàn)實(shí)依然很殘酷。(2013.07.29最后更新) 閱讀全文
摘要: 對(duì)于軟件開(kāi)發(fā),干的時(shí)間越長(zhǎng),就越感覺(jué)自己懂的知識(shí)少,似乎要學(xué)習(xí)的知識(shí)還有很多很多。最近恰在JavaLobby上看到一篇小文,作者談到是否有必要成為全面的專(zhuān)家。道理其實(shí)很淺顯,大家也都懂,我只是隨手翻譯一下罷了。(2013.06.30最后更新) 閱讀全文
摘要: OpenWorld 2013(中國(guó))將在七月的上海舉行,日前已發(fā)布了是次大會(huì)的各個(gè)專(zhuān)題講座。本文簡(jiǎn)介了若干我個(gè)人比較關(guān)注的主題與講座,希望其他朋友也能感興趣。(2013.06.06最后更新) 閱讀全文
摘要: 本文是InfoQ中的一篇關(guān)于遺留系統(tǒng)重構(gòu)的文章,該文基于一個(gè)真實(shí)案例,講述了如何在重構(gòu)遺留系統(tǒng)時(shí)編寫(xiě)單元測(cè)試,以及單元測(cè)試又是如何確保了重構(gòu)的正確性。(2013.03.03最后更新) 閱讀全文
摘要: 本文是ThoughtWorks公司架構(gòu)師Neal Ford在IBM developerWorks系列文章java.next中的第一篇,其基于Groovy,Scala和Clojure,講述了多語(yǔ)言編程的重要性,并對(duì)靜態(tài)類(lèi)型與動(dòng)態(tài)類(lèi)型,函數(shù)式編程與命令式編程進(jìn)行了比較。(2013.02.06最后更新) 閱讀全文
摘要: 本文是IBM developerWorks中的一篇文章,介紹了不使用加密與簽章技術(shù),如何防止對(duì)不可信數(shù)據(jù)輸入的解序列化。(2013.01.18最后更新) 閱讀全文
摘要: Lambda表達(dá)式是自Java SE 5引入泛型以來(lái)最重大的Java語(yǔ)言新特性,本文是2012年度最后一期Java Magazine中的一篇文章,它介紹了Lamdba的設(shè)計(jì)初衷,應(yīng)用場(chǎng)景與基本語(yǔ)法。(2013.01.07最后更新) 閱讀全文
摘要: 關(guān)于Object類(lèi)中的equals()方法與Comparable接口中的compareTo()方法之間有何種關(guān)聯(lián),之前還真沒(méi)考慮過(guò)。通過(guò)java.net看到此文之后,收獲了一點(diǎn)兒新知識(shí),希望大家也能如此。(2012.12.09最后更新) 閱讀全文
摘要: 應(yīng)用使用32位的JVM,還是應(yīng)該使用64位的JVM,我自己以前還真沒(méi)想過(guò),大家都想過(guò)了嗎?本文是Plumbr中的一篇博文,為大家提了個(gè)醒。(2012.11.27最后更新) 閱讀全文
摘要: 本文是Oracle官方針對(duì)今年JavaOne大會(huì)戰(zhàn)略主旨演講的一篇博客,總結(jié)了過(guò)去一年中Java在不同領(lǐng)域的進(jìn)展,并展望了其在今后一段時(shí)期的計(jì)劃。(2012.10.06最后更新) 閱讀全文
摘要: 本年度的Duke's Choice Award已在JavaOne 2012大會(huì)中頒出,值得提及的是,Java之父James Gosling目前所工作的公司也獲得了該項(xiàng)大獎(jiǎng)。(2012.10.05最后更新) 閱讀全文
摘要: There are many and many articles to represent how to customize layout manager. This essay just be simple study notes, which demonstrates how to layout UI components like piling up blocks or building Pyramid. It's very simple, but funny, maybe you're insterested in. (2012.07.17 last updated) 閱讀全文
摘要: 本文是JavaLobby的一篇博文,作者是Eclipse基金會(huì)的技術(shù)傳教士,以"資深"人士的口吻對(duì)非"資深"求職者的一點(diǎn)兒忠告。文章很短,道理很淺。(2012.07.05最后更新) 閱讀全文
摘要: 關(guān)于Java序列化的文章早已是汗牛充棟了,本文是對(duì)我個(gè)人過(guò)往學(xué)習(xí),理解及應(yīng)用Java序列化的一個(gè)總結(jié)。此文內(nèi)容涉及Java序列化的基本原理,以及多種方法對(duì)序列化形式進(jìn)行定制。在撰寫(xiě)本文時(shí),既參考了Thinking in Java, Effective Java,JavaWorld,developerWorks中的相關(guān)文章和其它網(wǎng)絡(luò)資料,也加入了自己的實(shí)踐經(jīng)驗(yàn)與理解,文、碼并茂,希望對(duì)大家有所幫助。(2012.02.14最后更新) 閱讀全文
摘要: 本文是"探索JUnit4擴(kuò)展"系列中的第三篇,將進(jìn)一步探究Rule的應(yīng)用,展示如何使用Rule來(lái)替代@BeforeClass,@AfterClass,@Before和@After的功能。(2012.01.04最后更新) 閱讀全文
摘要: 在上一篇文章《探索JUnit4擴(kuò)展:擴(kuò)展Runner》中,討論了一種擴(kuò)展JUnit4的方式,即,直接修改Test Runner的實(shí)現(xiàn)(BlockJUnit4ClassRunner)。但這種方法顯然不便于靈活地添加或刪除擴(kuò)展功能。本文將使用JUnit4.7才開(kāi)始引入的擴(kuò)展方式--Rule來(lái)實(shí)現(xiàn)相同的擴(kuò)展功能。(2010.12.25最后更新) 閱讀全文
摘要: 在使用JUnit的過(guò)程中,大家可能會(huì)對(duì)JUnit進(jìn)行一些擴(kuò)展。本文中的示例為JUnit4定義了一個(gè)新的Annotation,并相應(yīng)地對(duì)已有的Runner進(jìn)行擴(kuò)展,使其能夠解析新引入的Annotation。(2011.12.25最后更新) 閱讀全文
摘要: 大家肯定都用過(guò)Eclipse的調(diào)試的功能,在調(diào)試的過(guò)程中自然也無(wú)法避免要使用斷點(diǎn)(breakpoint),但不知是否對(duì)Eclipse中各類(lèi)斷點(diǎn)都有所了解。本篇圖文并茂地介紹了Eclipse中全部類(lèi)型的斷點(diǎn),及其設(shè)置,希望對(duì)大家有所幫助。(2011.11.20) 閱讀全文
摘要: 每年的JavaOne都會(huì)發(fā)布關(guān)于Java未來(lái)發(fā)展的計(jì)劃或愿景,在今年的Java Strategy Keynote中,Oracle則向大家描述了將如何推動(dòng)Java繼續(xù)前進(jìn)。本文是JavaOne2011的官方博文,概述了Java Strategy Keynote中提及的重要內(nèi)容。(2011.10.07最后更新) 閱讀全文
摘要: JavaOne 2011還在進(jìn)行中,前日(2011.10.03),本年度的Duke's Choice Award已新鮮出爐。本文是JavaOne的官方博客,記錄了本次全部獲獎(jiǎng)應(yīng)用,大家可以看看這些應(yīng)用有何高明之處。(2011.10.05最后更新) 閱讀全文
摘要: 昨天(2011.10.03),IBM發(fā)布了它的Java SDK 7,目前僅支持AIX和Linux平臺(tái)。本文是IBM上的一篇新聞,大家可以看看它有哪些新特性或變化。(2011.10.04最后更新) 閱讀全文
摘要: 在經(jīng)過(guò)漫長(zhǎng)地等待之后,Java SE 7終于發(fā)布了。Info的這篇文章總結(jié)了JDK 7的關(guān)鍵新特性,希望對(duì)大家了解JDK有幫助。(2011.07.30最后更新) 閱讀全文
摘要: 在開(kāi)發(fā)一個(gè)新浪微博客Swing戶(hù)端的過(guò)程中希望能展現(xiàn)不規(guī)則的窗體界面,原來(lái)JDK 6 update 10提供了創(chuàng)建指定形狀窗體的特性,簡(jiǎn)單易用,記于此處。(2010.05.31最后更新) 閱讀全文
摘要: Java之父Games Gosling已進(jìn)入Google工作了,JavaLobby社區(qū)的一篇文章對(duì)該事件進(jìn)行了評(píng)論,大家也可以發(fā)表自己的看法。(2011.03.30最后更新) 閱讀全文