John Jiang

a cup of Java, cheers!
https://github.com/johnshajiang/blog

   :: 首页 ::  :: 联系 :: 聚合  :: 管理 ::
  131 随笔 :: 1 文章 :: 530 评论 :: 0 Trackbacks

2011年10月5日 #

     摘要: 探索HTTP/2系列的第四篇文章,解读了HTTP/2流的状态,以及状态之间的转化。(2016.10.09最后更新)  阅读全文
posted @ 2016-10-08 21:17 John Jiang 阅读(3011) | 评论 (0)编辑 收藏

     摘要: 在本系列的第一篇文章中已经介绍了HTTP 2协议,本文则将简述用于HTTP/2头部压缩的HPACK协议。(2016.10.01最后更新)  阅读全文
posted @ 2016-09-24 20:29 John Jiang 阅读(2531) | 评论 (0)编辑 收藏

     摘要: 目前支持HTTP/2的服务器端与客户端实现已有不少,本文分别以Jetty和curl作为服务器端和客户端,描述了HTTP/2测试环境的搭建过程。本文还将使用这个测试环境去展示Jetty在实现HTTP/2时的一个局限和一个Bug。(2016.09.22最后更新)  阅读全文
posted @ 2016-09-20 16:42 John Jiang 阅读(4412) | 评论 (1)编辑 收藏

     摘要: HTTP/2的协议包含着两个RFC:Hypertext Transfer Protocol Version 2 (RFC7540),即HTTP/2;HPACK: Header Compression for HTTP/2 (RFC7541),即HPACK。RFC7540描述了HTTP/2的语义,RFC7541则描述了用于HTTP/2的头部压缩的格式。本文只涉及HTTP/2协议,本系列的后续文章将会涉及HPACK协议。(2016.10.13最后更新)  阅读全文
posted @ 2016-09-19 11:36 John Jiang 阅读(2649) | 评论 (0)编辑 收藏

     摘要: 本文是Play OpenJDK的第二篇,介绍了如何突破JDK不允许自定义的包名以"java."开头这一限制。这一技巧对于基于已有的JDK向java.*中添加新类还是有所帮助的。(2015.11.02最后更新)  阅读全文
posted @ 2015-11-01 20:06 John Jiang 阅读(3806) | 评论 (0)编辑 收藏

     摘要: 计划使Play OpenJDK成为一组介绍如何使用并参与OpenJDK项目的系列文章。本文是该系列的第一篇文章,它基于OpenJDK 8的源代码介绍了构建一个属于自己的JDK方法。(2015.10.30最后更新)  阅读全文
posted @ 2015-10-30 23:17 John Jiang 阅读(3500) | 评论 (0)编辑 收藏

     摘要: 本文是Java Magazine 201405/06刊中的一篇文章,也是文章系列"利用Java SE 8流处理数据"中的第二篇,它基于flatMap()和collect()介绍了Java流的高级用法(2014.08.15最后更新)  阅读全文
posted @ 2014-08-15 19:57 John Jiang 阅读(2219) | 评论 (2)编辑 收藏

     摘要: 本文是Java Magazine 201403/04刊中的一篇文章,也是文章系列"利用Java SE 8流处理数据"中的第一篇,它概述了Java流的基本原理与基本应用,是一篇很好的Java Streams API的入门文章。(2014.07.27最后更新)  阅读全文
posted @ 2014-07-27 20:54 John Jiang 阅读(4592) | 评论 (6)编辑 收藏

     摘要: 本文是上周五(2014.05.02)才发布的美国2014年04月度非农业就业报告中的概要部分,与软件技术毫无干系。这份报告在出台后的极短时间内对外汇市场造成了极大影响,纯粹是出于好奇看了一下这份报告,学到了不少英文行业名称,以及英文在数字方面的用法。(2014.05.05最后更新)  阅读全文
posted @ 2014-05-05 00:12 John Jiang 阅读(614) | 评论 (1)编辑 收藏

     摘要: 本文是IBM developerWorks中的一篇介绍Java 8关键新特性的文章,它主要关注Lambda表达式和改进的接口。(2014.04.19最后更新)  阅读全文
posted @ 2014-04-19 23:48 John Jiang 阅读(3135) | 评论 (0)编辑 收藏

     摘要: 本文是稍早前java.net推荐的一篇博文,描述了Java流的8个有用的特性。(2014.03.02最后更新)  阅读全文
posted @ 2014-02-28 15:25 John Jiang 阅读(1014) | 评论 (0)编辑 收藏

     摘要: 本文是发布在java.net上的一篇摘自于一书中的节选,介绍了使用Gradle构建Java Web应用的过程。刚刚接触Gradle,看到了这篇小文,随手译了出来:-) (2014.01.23最后更新)  阅读全文
posted @ 2014-01-23 21:22 John Jiang 阅读(14268) | 评论 (8)编辑 收藏

     摘要: 本文是Java并发基础实践系列中的一篇,介绍了最简单的死锁场景,并使用jstack产生的thread dump来查找死锁。(2013.12.29最后更新)  阅读全文
posted @ 2013-12-29 20:19 John Jiang 阅读(12263) | 评论 (1)编辑 收藏

     摘要: 在最新一期的Java Magazine中有一篇访谈,介绍了一个学习Java并发编程的动画应用Java Concurrent Animated。该应用以十分直观的方式展示了Java并发工具包中的每一个重要组件,降低了学习Java并发编程的难度。(2013.12.07最后更新)  阅读全文
posted @ 2013-12-07 17:45 John Jiang 阅读(2358) | 评论 (1)编辑 收藏

     摘要: 本系列的第三篇文章将以实现一个极简单的查找最大数的任务为例,分别给出了四个版本:1.顺序执行;2.基于传统的Thread.join();3.基于并发工具包的Future;4.基于JDK 7引入的Fork/Join框架。(2013.10.25最后更新)  阅读全文
posted @ 2013-10-23 23:27 John Jiang 阅读(4227) | 评论 (0)编辑 收藏

     摘要: 在本系列的上一篇中讲述了三种退出并发任务的方式,但都是基于JDK 5之前的API。本篇将介绍使用由JDK 5引入的java.concurrent包中的API来退出任务。(2013.10.08最后更新)  阅读全文
posted @ 2013-10-07 16:55 John Jiang 阅读(3286) | 评论 (3)编辑 收藏

     摘要: 计划写一个"Java并发基础实践"系列,算作本人对Java并发学习与实践的简单总结。本文是该系列的第一篇,介绍了退出并发任务的最简单方法。(2013.09.25最后更新)  阅读全文
posted @ 2013-09-21 19:11 John Jiang 阅读(2025) | 评论 (0)编辑 收藏

     摘要: 本文是ThoughtWorks首席科学家Martin Fowler接受InformIT采访时的访谈录,谈到了在ThoughtWorks工作的情况,对ThoughWorks感兴趣的朋友们可以看看。(2013.08.23最后更新)  阅读全文
posted @ 2013-08-22 14:43 John Jiang 阅读(9707) | 评论 (3)编辑 收藏

     摘要: Oracle OpenWorld 2013(上海)已经结束,我全程参与了此次技术大会。本文是我参会的所见、所闻、所思与所感,有文,有图,且无码。(2013.08.03最后更新)  阅读全文
posted @ 2013-08-02 11:50 John Jiang 阅读(1607) | 评论 (0)编辑 收藏

     摘要: 最近有点儿闲,看了一些文章,有了一些感触,写成一篇小文。软件世界真的变化很大,没有永恒的终结者。今天的终结者,明天可能就会被别人终结。道理大家都懂,但现实依然很残酷。(2013.07.29最后更新)  阅读全文
posted @ 2013-07-14 11:15 John Jiang 阅读(2227) | 评论 (3)编辑 收藏

     摘要: 对于软件开发,干的时间越长,就越感觉自己懂的知识少,似乎要学习的知识还有很多很多。最近恰在JavaLobby上看到一篇小文,作者谈到是否有必要成为全面的专家。道理其实很浅显,大家也都懂,我只是随手翻译一下罢了。(2013.06.30最后更新)  阅读全文
posted @ 2013-06-30 21:02 John Jiang 阅读(2366) | 评论 (2)编辑 收藏

     摘要: OpenWorld 2013(中国)将在七月的上海举行,日前已发布了是次大会的各个专题讲座。本文简介了若干我个人比较关注的主题与讲座,希望其他朋友也能感兴趣。(2013.06.06最后更新)  阅读全文
posted @ 2013-05-28 21:56 John Jiang 阅读(1927) | 评论 (0)编辑 收藏

     摘要: 本文是InfoQ中的一篇关于遗留系统重构的文章,该文基于一个真实案例,讲述了如何在重构遗留系统时编写单元测试,以及单元测试又是如何确保了重构的正确性。(2013.03.03最后更新)  阅读全文
posted @ 2013-03-03 22:44 John Jiang 阅读(2165) | 评论 (0)编辑 收藏

     摘要: 本文是ThoughtWorks公司架构师Neal Ford在IBM developerWorks系列文章java.next中的第一篇,其基于Groovy,Scala和Clojure,讲述了多语言编程的重要性,并对静态类型与动态类型,函数式编程与命令式编程进行了比较。(2013.02.06最后更新)  阅读全文
posted @ 2013-02-06 00:04 John Jiang 阅读(3199) | 评论 (0)编辑 收藏

     摘要: 本文是IBM developerWorks中的一篇文章,介绍了不使用加密与签章技术,如何防止对不可信数据输入的解序列化。(2013.01.18最后更新)  阅读全文
posted @ 2013-01-17 22:39 John Jiang 阅读(2359) | 评论 (0)编辑 收藏

     摘要: Lambda表达式是自Java SE 5引入泛型以来最重大的Java语言新特性,本文是2012年度最后一期Java Magazine中的一篇文章,它介绍了Lamdba的设计初衷,应用场景与基本语法。(2013.01.07最后更新)  阅读全文
posted @ 2013-01-01 16:26 John Jiang 阅读(3157) | 评论 (2)编辑 收藏

     摘要: 关于Object类中的equals()方法与Comparable接口中的compareTo()方法之间有何种关联,之前还真没考虑过。通过java.net看到此文之后,收获了一点儿新知识,希望大家也能如此。(2012.12.09最后更新)  阅读全文
posted @ 2012-12-06 23:14 John Jiang 阅读(2142) | 评论 (3)编辑 收藏

     摘要: 应用使用32位的JVM,还是应该使用64位的JVM,我自己以前还真没想过,大家都想过了吗?本文是Plumbr中的一篇博文,为大家提了个醒。(2012.11.27最后更新)  阅读全文
posted @ 2012-11-26 23:41 John Jiang 阅读(4503) | 评论 (5)编辑 收藏

     摘要: 本文是Oracle官方针对今年JavaOne大会战略主旨演讲的一篇博客,总结了过去一年中Java在不同领域的进展,并展望了其在今后一段时期的计划。(2012.10.06最后更新)  阅读全文
posted @ 2012-10-06 19:26 John Jiang 阅读(1726) | 评论 (0)编辑 收藏

     摘要: 本年度的Duke's Choice Award已在JavaOne 2012大会中颁出,值得提及的是,Java之父James Gosling目前所工作的公司也获得了该项大奖。(2012.10.05最后更新)  阅读全文
posted @ 2012-10-03 23:08 John Jiang 阅读(1338) | 评论 (0)编辑 收藏

     摘要: 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)  阅读全文
posted @ 2012-07-15 22:14 John Jiang 阅读(1108) | 评论 (3)编辑 收藏

     摘要: 本文是JavaLobby的一篇博文,作者是Eclipse基金会的技术传教士,以"资深"人士的口吻对非"资深"求职者的一点儿忠告。文章很短,道理很浅。(2012.07.05最后更新)  阅读全文
posted @ 2012-06-30 23:47 John Jiang 阅读(1391) | 评论 (0)编辑 收藏

     摘要: 关于Java序列化的文章早已是汗牛充栋了,本文是对我个人过往学习,理解及应用Java序列化的一个总结。此文内容涉及Java序列化的基本原理,以及多种方法对序列化形式进行定制。在撰写本文时,既参考了Thinking in Java, Effective Java,JavaWorld,developerWorks中的相关文章和其它网络资料,也加入了自己的实践经验与理解,文、码并茂,希望对大家有所帮助。(2012.02.14最后更新)  阅读全文
posted @ 2012-02-13 23:22 John Jiang 阅读(61361) | 评论 (20)编辑 收藏

     摘要: 本文是"探索JUnit4扩展"系列中的第三篇,将进一步探究Rule的应用,展示如何使用Rule来替代@BeforeClass,@AfterClass,@Before和@After的功能。(2012.01.04最后更新)  阅读全文
posted @ 2012-01-04 00:13 John Jiang 阅读(2353) | 评论 (3)编辑 收藏

     摘要: 在上一篇文章《探索JUnit4扩展:扩展Runner》中,讨论了一种扩展JUnit4的方式,即,直接修改Test Runner的实现(BlockJUnit4ClassRunner)。但这种方法显然不便于灵活地添加或删除扩展功能。本文将使用JUnit4.7才开始引入的扩展方式--Rule来实现相同的扩展功能。(2010.12.25最后更新)  阅读全文
posted @ 2011-12-24 23:26 John Jiang 阅读(2335) | 评论 (0)编辑 收藏

     摘要: 在使用JUnit的过程中,大家可能会对JUnit进行一些扩展。本文中的示例为JUnit4定义了一个新的Annotation,并相应地对已有的Runner进行扩展,使其能够解析新引入的Annotation。(2011.12.25最后更新)  阅读全文
posted @ 2011-12-14 00:01 John Jiang 阅读(3035) | 评论 (4)编辑 收藏

     摘要: 大家肯定都用过Eclipse的调试的功能,在调试的过程中自然也无法避免要使用断点(breakpoint),但不知是否对Eclipse中各类断点都有所了解。本篇图文并茂地介绍了Eclipse中全部类型的断点,及其设置,希望对大家有所帮助。(2011.11.20)  阅读全文
posted @ 2011-11-20 20:57 John Jiang 阅读(21107) | 评论 (13)编辑 收藏

     摘要: 每年的JavaOne都会发布关于Java未来发展的计划或愿景,在今年的Java Strategy Keynote中,Oracle则向大家描述了将如何推动Java继续前进。本文是JavaOne2011的官方博文,概述了Java Strategy Keynote中提及的重要内容。(2011.10.07最后更新)  阅读全文
posted @ 2011-10-07 11:51 John Jiang 阅读(1917) | 评论 (0)编辑 收藏

     摘要: JavaOne 2011还在进行中,前日(2011.10.03),本年度的Duke's Choice Award已新鲜出炉。本文是JavaOne的官方博客,记录了本次全部获奖应用,大家可以看看这些应用有何高明之处。(2011.10.05最后更新)  阅读全文
posted @ 2011-10-05 00:13 John Jiang 阅读(1717) | 评论 (0)编辑 收藏