2005年02月
还记得我在上一个关于这本书的帖子时我还在问,谁有路子提供翻译机会,没想到这次有路子的人是我。
今天早上收到Manning Publications Co.的Publisher,Marjan Bace的E-mail,大意是他们计划跟Hibernate in Action类似,将会推出简体中文版的Spring in Action,作为eBook在Manning的网站上提供下载(估计不是免费的)。
阅读全文>
发表于 @ 2005年02月26日 10:47:00|评论(loading...)|编辑
这是一部相当有味道的电影,中文片名叫做《再见列宁》,2003年上映。
从名字上看你也许能一下子就看出来这大概是一部政治电影,没错,它反映的是1990年德国柏林墙被拆除的那个年代当时东德一个普通家庭的故事,这当中当然不可避免的会有政治的成分。但是我不想说这些,这部片子吸引我的是它的另一个视角:一个男孩到男人的成长过程、遇到的挫折、以及他对母亲的爱。
阅读全文>
发表于 @ 2005年02月25日 01:22:00|评论(loading...)|编辑
至此我的XML学习笔记就截止了,大家也看到,这些都是十分基础的内容,然而我们平时很少去关心它。我的初衷是在做了N久的J2EE后回过头来温习一下XML的基本概念和用法,并不要求自己太深入,目的也达到了。具体的语法细节我想大家可以参考W3C和SUN官网上的资料和JavaDoc。
希望能当作XML的Java版快速入门来看,这些都是我们做Java的需要了解的最基本的XML常识,了解这些以后对一般的XML处理工作也基本上够了。
谢谢大家!祝大家天天开心,日日上进!:)阅读全文>
发表于 @ 2005年02月24日 23:07:00|评论(loading...)|编辑
在前面的笔记中,我们曾经提到读取XML数据的两种截然不同的方式,SAX就是其中一种。来看一段代码:阅读全文>
发表于 @ 2005年02月24日 23:04:00|评论(loading...)|编辑
在前面,我们一起很粗略的过了一遍XML的基础知识,下面该看看如何在Java中使用功能强大的XML了。由于XML的广泛应用,许多厂商或者团体都使用Java编写了用于处理XML的类库,这些类库之间并不兼容,为了给这些类库的使用者们提供一个通用的接口,我们欣喜地看到Java中引入了JAXP,Java API for XML Processing,我们当然也可以通过实现和扩展JAXP来构建我们自己的XML处理类。
在我们的日常Java编程中,需要处理XML通常是如下情形:
I- 从XML中读取和分析数据
II- 利用XLST将XML转换成其他格式
在接下来的笔记中,我们就分别来看看这两种工作如何通过JAXP来完成。
阅读全文>
发表于 @ 2005年02月24日 23:03:00|评论(loading...)|编辑
XML文档只能以文本文件的形式存在吗?错。
常见的XML存储形式有:
文本文件
关系数据库
二进制文件
XML数据库(这个是不是有点过分了,呵呵)
以文本形式储存XML数据当然在很多情况下是适用的,也是我们最常看到的XML存储方式,因为我们在J2EE中接触最多的就是XML的配置文件嘛,如果不是文本的,我们改起来是不是就有点别扭了?只不过文本的东西每次用的时候都需要做转换,影响到执行的效率罢了。所以通常我们在做项目时也会用一些自动化的工具将我们的XML在系统运行或调试前做一些转换。
这样看,我们还真的不能想当然了。
阅读全文>
发表于 @ 2005年02月19日 23:12:00|评论(loading...)|编辑
XML的另一个重要的应用是数据操作。
就数据操作而言,一个基本的概念是XPath,XPath是一种语言,用于通过某种文本形式的途径表示XML文档中的元素或者另一个XML文档等等,基于XPath,我们才能够在XML中相对方便的引用到相关的内容,以致使用到XSLT这样的东东。
为什么会有这样的语言?因为在很多时候XML文档所代表的数据是相互关联的,而并非独立的一个一个元素和文档,XPath等语言使得很多高级的操作得以简单的完成。
阅读全文>
发表于 @ 2005年02月19日 23:11:00|评论(loading...)|编辑
由于XML的平台和技术独立性,它经常被用来在不同的系统之间传递消息,基于XML这一特性而产生的常见的技术和规范包括:SOAP、Web Services、UDDI和WSDL。
SOAP的全称是Simple Object Access Protocol,它定义了一类XML如何创建、打包和传送,可以直接通过HTTP方式同步或异步的传递;Web Services在很大程度上依赖于SOAP;UDDI相当于在网上存储和共享Web Services的位置信息,供使用者在需要调用某个Web Service时查询;而WSDL是Web Services Dercription Language的缩写,用于在UDDI上描述Web服务。
阅读全文>
发表于 @ 2005年02月19日 23:10:00|评论(loading...)|编辑
作为W3C推出的拳头标准,XML的强大优势之一就是它可以方便的被转换成其他格式的XML或者其他不同类型的文件,如PDF、HTML等都是常见的XML转换的输出格式。
为了实现这个功能,我们需要利用到eXtensible Stylesheet Language for Transformations (XSLT)。XSL文件是这样一些样式表,它们指定如何从一个XML文件转换出其他的格式。这个是不是多少让你想起MFC的文档-视图结构或者MVC模式?
阅读全文>
发表于 @ 2005年02月19日 23:09:00|评论(loading...)|编辑
为了让XML文档能够被应用程序识别和处理,必须提供一个读取XML文档的途径。当然,你也许会说,XML不就是文本文件吗?我用java.io包不就可以读取了?XML文件并非简单的plain text,它有自己的结构和描述性,我们需要在基本的I/O之上更进一步。常见的XML读取有两种不同的方式:SAX和DOM,下面我们分别来看一下:阅读全文>
发表于 @ 2005年02月19日 22:10:00|评论(loading...)|编辑
为了使得我们定义的XML文档有意义,我们通常必须为它定义一组语法,如:这个文档应该包含那种类型的数据,这种数据的层次结构又是怎样的,等等。这样我们的XML文档就可以通过专门的工具来验证其合法性。
阅读全文>
发表于 @ 2005年02月19日 22:08:00|评论(loading...)|编辑
XML的用途可谓相当广泛,这归功于它的开放性和强大的描述能力。在接下来的笔记中,我会记录如下几个方面的内容:
阅读全文>
发表于 @ 2005年02月19日 22:08:00|评论(loading...)|编辑
XML是eXtensible Markup Language的缩写,它的前身是SGML,或者说,XML是SGML的子集。简单讲,XML是一种文档格式,作为一种标准,有利于不同机构间的数据交换。从表面上看,XML是一种语言,但是它同时也是一种创造和定义其他语言的语言。通过一组定义好的规范,我们可以很方便的扩展它。
阅读全文>
发表于 @ 2005年02月19日 22:07:00|评论(loading...)|编辑
开发出IntelliJ IDEA的JetBrains公司出品的Omea Reader是一款RSS阅读器,在3月31日之前,JetBrains提供免费的1.x版本永久注册码,需要经常性阅读RSS新闻的朋友又多了一个不错的选择。
在JetBrains的官网上可以下载最新版和获取注册码:
http://www.jetbrains.com/omea/download/reader.html
阅读全文>
发表于 @ 2005年02月19日 19:40:00|评论(loading...)|编辑
作为J2EE的开发者,其实我们每天都面对着各种各样的XML文件及应用,可以说XML几乎成了我们的家常便饭,从ANT的build.xml到Web Server的web.xml到Struts框架的struts-config到EJB应用的ejb-jar.xml到持久层框架如SQLMaps再到RPC中的消息传递,XML已经渗透到了我们平常开发工作的每一个角落,这一事实充分说明了XML强大的功能和生命力。(XML的应用范畴当然远不止这些J2EE的东东)
然而我们真正了解XML有多少?也许我们并没有真正思考过这样的问题,通常我们只是学学某类XML配置文件的写法,然后依葫芦画瓢,仅此而已,甚至在某些情况下我们可以直接通过图形界面或自动化工具生成所需的XML文档。当我发现自己虽然做了近4年Java但其实对XML知之甚少时,首先是惊讶,然后汗颜,再后来我就想,索性把XML的基础拿来从头温习一下,于是就有了你现在看到的blog文章。
基本上,我会记录最基础的XML概念和用法,用尽可能简单明了的表达方式让自己和大家一起对XML重新来过。这些基本的东西清楚以后,我们再回过头来看我们日常接阅读全文>
发表于 @ 2005年02月17日 23:23:00|评论(loading...)|编辑
由Craig Walls和Ryan Breidenbach合著的新书《Spring in Action》已交付印刷,北美市场和Amazon应该很快会上架,期待国内的引进版。另外不知道有没有人愿意翻译,如果有时间,我也想参与,呵呵。有路子的朋友别忘了通知一声哦。
阅读全文>
发表于 @ 2005年02月17日 00:27:00|评论(loading...)|编辑
春节长假即将结束,想想已经有好久没更新自己的blog了,正在等Arsenal和Crystal Palace的比赛转播,也睡不着,就写写最近的一些感想吧。这些天除了走亲访友、合家团聚、请客吃饭之外,也看了一些电影,玩了一些游戏。印象最深的是那一部一年前在美国上映的......阅读全文>
发表于 @ 2005年02月15日 02:09:00|评论(loading...)|编辑
几天不上技术网站,今天在Apache News Blog Online发现一个新东东:Struts Shale。这个是由Craig McClannahan发起并新近加入Struts的子项目,在这篇blog文章中,原来的Struts项目被称作Struts Classic。Struts Shale的主要目的是提供一个开源的基于JSF的Struts框架。
可能不少朋友还记得我前不久一篇关于Craig如何评价Struts和JSF的文章,看来Craig确实还挺有号召力的。
感兴趣的上这里下一个Shale版本预览一下吧:
http://cvs.apache.org/builds/jakarta-struts/nightly/struts-shale/
阅读全文>
发表于 @ 2005年02月01日 22:38:00|评论(loading...)|编辑