Flex与JSON及XML的互操作
平台需要互操作性。在这篇文章中,作者仔细研究了Flex和JSON及XML的互操作性。文章也包含了使用E4X库来将XML映射到图表和表格组件的内容,还演示了如何使用as3core库来解码JSON消息。
作者 Scott Delap译者 Jason Lai 发布于 2007年9月24日 上午9时30分
Sun公司的Shannon Hickey最近刚刚宣布了Beans Binding框架的1.0版本。该框架是JSR 295规范的参考实现,它试图:
[……]定义一套API,使得一对Java Beans属性之间的连接得到大幅度的简化,并保持属性的同步。属性的连接是可配置的:在更新属性之前,可以进行类型转换和值校验操作。
Shannon表示,针对该JSR的工作仍将继续进行,而且可能导致API发生变化。不过,框架的1.0版确实通过以下的显著特性代表了对Beans Binding API架构的一个主要的重新实现:
- 属性的概念已经被抽取出来,成为一个抽象的
Property类,并且提供了两个有趣的具体实现:BeanProperty和ELProperty。Binding目前已经成为一个表示两个Property实例之间绑定关系的抽象类(通常关联着两个对象)。- 使用自动同步的绑定则通过一个新的
AutoBinding子类实现出来。- 对复杂Swing组件(例如
JTable、JList和JComboBox)的绑定现在由定制的Binding子类处理。- 提供多种可能行为的合成型(synthetic)Swing属性现在是通过属性的多个版本的方式来向外暴露。例如:用于
JTextField的“text”、“text_ON_FOCUS_LOST”和“text_ON_ACTION_OR_FOCUS_LOST”;用于JList和JTable的“selectedElement”和“selectedElement_IGNORE_ADJUSTING”。- 所有的代码都被重新打包,放到
org.jdesktop之下。
用于该框架的基本API如下所示:
// Bind Duke's first name to the text property of a Swing JTextField
BeanProperty textP = BeanProperty.create("text");
Binding binding =
Bindings.createAutoBinding(READ_WRITE, duke, firstP, textfield, textP);
binding.bind();
// Bind Duke's mother's first name to the text property of a Swing JTextField,
// specifying that the JTextField's text property only reports change
// (thereby updating the source of the READ_WRITE binding) on focus lost
BeanProperty textP = BeanProperty.create("text_ON_FOCUS_LOST");
Binding binding =
Bindings.createAutoBinding(READ_WRITE, duke, motherFirstP, textfield, textP);
binding.bind();
Beans Binding所面向的是Swing的领域,在过去Swing领域曾经用过类似于JGoodies Binding这样的项目。另外的一个项目则是来自于Eclipse Foundation的JFace Data Binding,它为SWT、JFace和JavaBeans提供了核心的实现。不过这个框架早就为Swing和EMF这样的API留好了未来的扩展余地。
查看英文原文:JSR 295 Beans Binding Hits 1.0
平台需要互操作性。在这篇文章中,作者仔细研究了Flex和JSON及XML的互操作性。文章也包含了使用E4X库来将XML映射到图表和表格组件的内容,还演示了如何使用as3core库来解码JSON消息。
本文将简要介绍面向组合编程(COP,Composite Oriented Programming)的概念,展示它如何规避OOP存在的一些问题,并重新点燃使用可重用部件组装领域模型(Domain Model)的希望。
Mike Snell和Lars Powers用他们最近由Sams出版的新书《Visual Studio 2008揭秘》,试图帮助大家提高开发人员的生产力。本文包括一个下载样章——第10章调试。
Pierre Vigneras在本文中讨论了作为标准之一的BPEL所存在的问题。Pierre先给我们大致介绍了一个简单的并行流程,接着讨论了从业者在试图以一个结构化模型为基础表达非结构化流程时遇到的一系列问题。
Jeff Dwyer就关于他的新书(《Pro Web 2.0 Application Development with GWT》)、GWT1.5以及创建可搜索的Ajax应用谈了一些他的见解。
我们需要设身处地地为客户及客户的业务本身着想,与客户同舟共济。更多创新的思路、产品和模式也同样将为IT业带来新的出路。IT业并不需要坐以待毙,在春天到来之后,市场将会更加繁荣!
没有回复
回复