Java
成富
全栈工程师,写手,码农
14年全栈软件开发经验。
出版书籍《Quarkus云原生微服务开发实战》《深入理解Java 7:核心技术与最佳实践》,《Build Mobile Apps with Ionic 4 and Firebase》和《Exploring Java 9》 ,并在IBM developerWorks中国和InfoQ中文站发表技术文章百余篇。
展开
-
让Rhino的E4X在JDK5下运行
Rhino(http://www.mozilla.org/rhino/)已经被集成在JDK6中的JSR223 Scripting框架中。但是在JDK5中使用Rhino的E4X功能是不行的,因为默认情况下该功能是被关闭的,如果想要在JDK5中使用Rhino的E4X功能,就需要一些额外的代码。查看Rhino的ContextFactory的源代码可以看到,与E4X相关的Context.FEATURE...2007-06-04 22:01:59 · 188 阅读 · 0 评论 -
发布基于Apache MINA 2的联机俄罗斯方块的源代码
这其实是一件拖了很久的事情,周末的时候花了些时间把它做完了。之前写了一篇关于Apache MINA 2的文章,其中开发了一个联机俄罗斯方块的小应用做完示例,代码一直没有整理。周末的时候把代码整理并修正了一些问题,正式发布出去。希望对学习Apache MINA 2的人有所帮助。 原始的博文地址在这里,发表的文章在这里。源代码发布在Google Code上面,地址是:http://code...2010-07-12 10:21:19 · 143 阅读 · 0 评论 -
面向文档的数据库CouchDB初探
面向文档的数据库目前比较流行,它可以作为通常的关系数据库的补充,在很多情况下,用文档的方式建模优于关系数据库的ER模型。目前流行的面向文档的数据库实现有Apache CouchDB和MongoDB等。我之前花了一些时间研究CouchDB,主要是在如何用CouchDB作为一个应用服务器来开发Web应用。后来就写了一篇文章来说明其中的过程。对于CouchDB关注的朋友可以参考一下。(一万三千字呀)。...2009-08-11 22:00:59 · 215 阅读 · 0 评论 -
使用Java中的Runtime.exec()执行Windows命令
写这篇博客的出发点是为了回答JavaEye问答频道上面的一个问题,是问如何用Java来调用Windows上的wmic命令来获取系统中当前的进程信息。我的第一印象是用Runtime.exec()肯定是可以的,但一写就发现,事情并没有那么的简单。我又找到了一篇比较老的文章,仔细阅读,才明白了其中的细节。下面是一些要点: 等待命令执行结束用waitFor(),其返回值就是命令的返回值如果...2009-06-30 22:05:57 · 216 阅读 · 0 评论 -
《使用Apache MINA 2开发网络应用》
这是最近写的一篇关于Apache MINA 2的文章,主要介绍了Apache MINA 2的技术细节,对于想用它开发网络应用的人来说,可以作为一个参考。这篇文章的写作花费了我很长的时间,主要是其中示例应用的开发时间很长。为了做那个联机的俄罗斯方块,我花费了很长的时间把Spring Rich Client, Apache MINA和Spring整合起来,涉及到UI的开发就会比较复杂一些。最后做出...2009-12-06 10:01:55 · 146 阅读 · 0 评论 -
使用Fiddler来查看JVM发出的HTTP请求
在服务端代码中,我们经常会用Apache HttpClient或是JVM自带的HttpURLConnection来发出HTTP请求,如何查看这些请求的内容,我之前一直没有搞清楚。我试过一些监测工具,总是捕捉不到,前几天才知道应该这么去做。 用我们在IE上调试时常用的Fiddler就可以。Fiddler默认是作为系统的代理服务器的,所有通过Fiddler代理的请求,自然会被Fiddler来捕...2009-10-20 00:58:06 · 491 阅读 · 0 评论 -
简易的Java缩略图生成程序
在dev2dev看到有人发帖子问,就随手写了一个,贴到这里来以后找起来方便。java 代码 /** * * @param imageFilename 图片文件名 * @param width 要缩放的宽度 * @param height 要缩放的高度 * @throws IOException */ ...2007-06-10 22:36:08 · 145 阅读 · 0 评论 -
JavaFX写的简易Rss阅读器
受http://www.oreillynet.com/onjava/blog/2007/05/javafx_first_steps_hello_onjav_1.html这篇文章的启发,加上想学习一下JavaFX,就在上面那篇文章的基础上,做了一个简易的RSS阅读器,其界面类似于Adobe Flex 2的一个demo:进入http://try.flex.org/index.cfm,找到Blog Re...2007-06-05 10:26:52 · 304 阅读 · 0 评论 -
JDK 5, JSR223, Rhino, E4X (2)
之前说了一种在JDK 5中使用JSR223,并提供E4X支持的方案,上面的方案需要对Sun自带的jar进行修改,这可能会有版权之类的问题,所以我采用另外的一种方案,就是提供自己的JSR223的JavaScript实现。可以参考的资料有scripting.dev.java.net上面的其它脚本语言的JSR223实现,还有就是Sun的JavaScript的实现的代码,当然是反编译过的。不过Sun的实...2007-06-04 22:08:56 · 154 阅读 · 0 评论 -
JDK 5, JSR223, Rhino, E4X (1)
在前面的一篇博客中,我写了怎么在JDK5的环境下使用Rhino的E4X功能,下面要说的是如何在JDK5中使用JSR223的Scripting框架。JSR223即javax.script包是JDK6.0才引入的,并且集成了Rhino作为JavaScript的引擎。不过JDK6集成的Rhino是经过删减功能的,包括主要的E4X没有加入。需要解决的问题有几个:首先把JSR223的JDK6的实现剥离出...2007-06-04 22:06:34 · 198 阅读 · 0 评论 -
《深入探讨Java类加载器》
《深入探讨Java类加载器》是我3月份写的一篇文章,一直没有在这个博客上面介绍一下。 Java的类加载器一直是个比较复杂的话题,在Java里面又是比较重要的概念。虽然一般开发中很少遇到,但是如果要开发容器或是OSGi组件的话,有些时候会遇到它。而且一旦出现问题,很难一下子发现问题的所在。这篇文章就是结合了之前自己的一些使用经验,对Java的类加载器做了一些探讨。 文章的摘要如...2010-06-30 20:56:04 · 114 阅读 · 0 评论