基于Http协议的Java隧道通讯 (下)

发表于:2008-06-11来源:作者:点击数: 标签:HttphttpHTTPjavaJAVA
关键字:Http协议 Java隧道通讯 从下面隧道客户端程序TunnelClient的代码中我们可以看到,其工作原理与Java隧道服务端的完全相同。客户端的 java .io.ObjectInputStream,,java.io.ObjectOutStream分别对应服务端的java.io.ObjectOutStream ,java.io.ObjectI
关键字:Http协议 Java隧道通讯

 

  从下面隧道客户端程序TunnelClient的代码中我们可以看到,其工作原理与Java隧道服务端的完全相同。客户端的java.io.ObjectInputStream,,java.io.ObjectOutStream分别对应服务端的java.io.ObjectOutStream ,java.io.ObjectInputStream。客户端与服务端形成了一个对象传输的管道。

  在Java隧道中我们可以增加加密技术来保证传递信息在Inte.net上的安全传递。在对象进入通道之前,可以用加密密钥对对象流先加密(我们假设用非对称加密算法,当然可以根据加密强度的要求用不同的加密算法和密钥长度),再送入通道中;在接收到加密对象流之后,先用解密密钥对对象流解密,再还原为对象实例。

  这里要注意,无论是在服务端还是在客户端,都必须包含Msg类的Class文件,而且Msg在两端必须要一致。因为隧道的一端要实例化Msg对象,另一端要从IO中获得对象流,再用Msg类来造型(Cast)。

  4.结束语

  Java隧道技术如此简单,无论是代码的编写,还是运行环境的组建,都非常容易。正是因为Java隧道技术的简单性,才使我们可以方便的把这个技术集成到应用系统中。然而,简洁不代表功能的简单,基于这个技术,可以实现基于Http的对象消息传递和远程方法调用,并且穿越防火墙。Java隧道技术为Java平台的应用在因特网上的部署提供了一个简单,高效的方案。


 

原文转自:http://www.ltesting.net