频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

浅谈Java中通信机制及与C/C API的集成

来源: 作者:佚名 出处:巧巧读书 2008-03-20 进入讨论组
下一页 1 2 

    背景:

  对于旧有系统的改造和升级,最苦恼的莫过于跨平台,跨语言。我的一个朋友最近从Java专向了专攻.NET——因为.NET的CLR既有类似Java虚拟机概念这种已经被证明很成功的底层托管能力。又对于Windows的就有桌面应用提供了良好的兼容。

  最近我的一个个人项目也面临着这样的需求。一个C语言开发的中间件,通过API暴露给二次开发及插件应用。现在由于对其应用的需求变得日趋复杂,而且正在脱离Unix的管理环境,走向基于JWS这样的BCS管理。有朋友推荐我用JNI,但这样一是增加了耦合度,二是让Java睡在JNI感觉不太安稳。在认知了上下两层的系统平台后,问题变得明朗起来:如何在HTTP协议下实现Java和C之间的交互?

  思路:

  本人对Java比较熟悉,先从Java的角度入手,Java间的通信方法:

  1 通过URL,Applet/JWS访问被影射到URL的动态资源(Servlet)

  2 通过URL,Applet/JWS访问共享的静态资源(Server定期更新静态资源)

  3 通过序列化和反序列化,实现简单对象的传输(比如Resin的Hessian框架就提供了这种通信的方式)

  4 通过一些工具做代码生成,利用Web Services实现客户端和服务端的交互

  此外脱离HTTP,还可以做RMI,socket编程

  现在问题是通信的一端由Java变成了C/C++, 于是, 解决方案1需要把动态资源由CGI来定义,而方案3变得不再适用。于是方案有:

  1 通过URL,Applet/JWS访问被影射到URL的动态资源(CGI)

  2 通过URL,Applet/JWS访问共享的静态资源(Server定期更新静态资源)

  3 通过一些工具做代码生成,利用Web Services实现客户端和服务端的交互(×××这是我们讨论的重点×××)

查看 http://www.qqread.com/java/2008/03/r402280.html 更多文章 更多内容请看Java环境安装配置Java编程开发手册热门通信技术专区专题,或进入讨论组讨论。
下一页 1 2 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章