近日位于法国的咨询服务公司Noelios Technologies发布了Restlet开源项目(面向Java的轻量级REST框架)的新版本,该版本包含了针对ADO.NET Data Services的Restlet扩展。此举是微软和Noelios Technologies协作的成果,这样Java开发者就可以轻松使用ADO.NET Data Services了。
通过ADO.NET Data Services框架,我们可以创建RESTful服务以及使用这些服务的客户端。
根据MSDN所述:
ADO.NET Data Services框架包含了很多模式与程序库,以此创建并使用Web上的数据服务。该框架的目标是简化数据服务的创建,使用户能够轻松创建与Web集成良好、灵活的数据服务。因此,ADO.NET Data Services使用URI指向数据片段并通过简单、众所周知的格式来代表数据,比如JSON和ATOM(基于XML的feed格式)。
微软技术布道者Jean-Christophe Cimetiere撰写了一篇文章对ADO.NET Data Services(此前叫做“Project Astoria”)进行了详尽的介绍,并说明了该框架可以通过RESTful服务公开关系及非关系数据的原因。
为了让系统能够理解并利用数据上的语义,ADO.NET Data Services使用Entity Data Model(EDM,一种实体关系衍生物)并通过数据服务来对数据进行建模。这样就会以“实体类型”实例或“实体”的形式来组织数据并管理实体之间的关联关系。
对于关系数据来说,ADO.NET Data Services可以暴露由ADO.NET Entity Framework所创建的EDM模型。对于其他数据源(比如非关系数据)或是其他的数据库访问技术(比如LINQ to SQL)来说,ADO.NET Data Services又提供了一种机制将这些数据源建模为实体和关系(比如通过EDM schema描述)并将其暴露为数据服务。
大家可以通过此链接深入了解ADO.NET Data Services。
根据Restlet站点所述,Restlet是一个辅助开发RESTful客户端与服务端应用的框架。Restlet框架包含了一个Restlet API,该API提供了一套核心契约集来注册Restlet实现。这些实现可以是开源项目,也可以是商业产品。Cimetriere说到:ADO.NET Data Services的Restlet扩展提供了一个高层次的client API来扩展Restlet框架的核心功能:可以访问位于ASP.NET服务器或是Windows Azure云计算平台上的远程数据服务。Java开发者可以通过扩展的代码生成器创建符合ADO.NET Data Services所暴露的数据实体的Java类。之后Java应用就可以通过一个简单的方法调用访问这些数据了。Restlet引擎和扩展的运行时组件会负责Java客户端应用与ADO.NET Data Services之间的通信。
下面的组件图描绘了整体的架构。
图 组件整体的架构
由微软领导的其他Java互操作技术还有Apache Stonehenge(跨平台的SOA/Web服务互操作)和Azure .NET Services SDK for Java。大家可以通过www.interoperabilitybridges.com/projects/tag/Java.aspx了解更多关于Java-.NET互操作的信息。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
翻译
相关推荐
-
内存数据网格提供商一头扎进Java
10年的时间里,应用性能解决方案提供商Alachisoft一直在用NCache(针对N-Tier和网格计算.NET应用的内存计算和数据网格产品)为.NET社区服务。
-
遇到这样一个问题:通过java service wrapper部署应用,wrapper进程占用的内存会一直升高, 直到把内存吃完应用崩溃,但是这个wrapper
遇到这样一个问题:通过java service wrapper部署应用,wrapper进程占用的内存会一直升高 […]
-
Google App Engine for Java 对于目前中国需要学习吗?
-
前无古人后无来者的Java平台
开发人员一直在致力于保持Java的活力,经过20年后,我们感觉从来没有更好的、更令人激动的时刻如同Java社区一样。