JNBridge提供了跨越Java与.NET代码的分布式事务支持
JNBridge提供了跨越Java与.NET代码的分布式事务支持
作者 Jonathan Allen 译者 张龙 发布于 2009年12月28日 上午5时5分
社区 .NET, Java 主题 互操作, 事务处理 标签 JNBridge
凭借JNBridge技术,Java和.NET代码无需交叉编译器就可以实现对象共享。所有Java代码运行在JVM上,而.NET代码则运行在CLR上。在该方案下,JVM和CLR可以运行在不同的机器上,也可以运行在一台机器的不同进程上,甚至还能运行在相同的进程上。从开发者的角度来看,运行在其他虚拟机上的对象仅仅是代理的远程对象而已。JNBridge有着悠久的历史,其首个版本发布于2002年6月。Adobe的ColdFusion是其最知名的客户,我们曾于2007年首度报道其对.NET的支持。
最新版的JNBridge可以轻松实现跨越虚拟机的分布式事务。其过程用两个字来说就是——简单。虽然开发者总是可以手工实现两阶段提交所需的工作,但借助于JNBridge 5.0,这一切都变得无比简单了,它能够帮助我们看管.NET一边的System.Transaction以及Java一边的javax.transaction。除了一些配置和对JavaTM.enable或是DotNetTM.enable的调用外,一切都和本地事务毫无二致。
要想使用JNBridge,开发者需要熟悉代理生成工具。该工具既可以独立运行,也可以作为Eclipse和Visual Studio的插件运行。其Eclipse版本证明了JNBridge的强大所在,因为它实际上是用.NET/WinForms开发的。
GUI可以两种方式运行,嵌入在WinForms和WPF中的Java AWT和Swing组件。很多公司都采取了这种方式:用Java构建了非常专业的控件(比如分子观测仪)并希望将其技术移植给.NET开发者而不想进行大量的迁移工作。
目前,JNBridge官方还没有支持Mono和Silverlight的计划。虽然JNBridge的底层技术同样适用于Mono和Silverlight 4,但如果出错开发者只能依靠自己的力量去解决。与此形成鲜明对比的是,受支持的平台则具有丰富的文档。
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
一:准备 www.savarese.org download
1. rocksaw-1.0.0-src.tar.gz
2. vserv-tcpip-0.9.2-src.tar.gz
二:编译源文件得到jar包 使用Ant
1. build vserv-tcpip-0.9.2-src
在vserv-tcpip-0.9.2目录下面建一个tests目录,然后在cmd窗口下进入 ......
类的初始化和对象初始化是 JVM 管理的类型生命周期中非常重要的两个环节,Google 了一遍网络,有关类装载机制的文章倒是不少,然而类初始化和对象初始化的文章并不多,特别是从字节码和 JVM 层次来分析的文章更是鲜有所见。
本文主要对类和对象初始化全过程进行分析,通过一个实际问题引入,将源代码转换成 JVM 字节码后, ......
原文链接:http://www.infoq.com/cn/news/2007/09/java_web_architecture_turnning
作者 田乐 发布于 2007年9月17日 上午9时24分
一位ID是jackson1225的网友在JavaEye询问了一个大型Web系统的架构和部署选型问题,希望能提高现有的基于Java的Web应用的服务能力。由于架构模式和部署调优一直是Java社区的热门话题,这个问 ......
使用ant.jar包(1.6版本),完成tar的打包功能,直接贴代码
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Li ......