C++和Java对象通信

6

我需要在我的应用程序中建立C++层和Java层之间的通信模型。最初,我计划使用带有XML的SOAP,但我的客户对建立数据库通信渠道感兴趣。

我对数据库不熟悉,不确定如何继续。我想听取您在使用数据库实现C++和Java层对象之间通信方面的真诚建议。

谢谢, Geet


这两个层如何与数据库交互?你需要从Java调用C++代码还是反过来? - dirkgently
不过预期的是在Java层构建对象数据库,然后从C++层查询详细信息并填充对象属性。 - pankaj pankaj
说服你的客户,CORBA将是一种不那么痛苦的方法。 - Denis Tulskiy
你是否正在尝试将C++对象转换为Java(例如,将C++字符串转换为Java字符串,反之亦然)? - Anderson Green
3个回答

6

2
如果你有两个不同的应用程序需要通信,使用sockets是一种可行的方式。如果你的C++层更像一个库,你也可以使用JNI(请参考http://en.wikipedia.org/wiki/JNI,并在谷歌上搜索相关教程)。

1

选择通信渠道和阻止模型在很大程度上取决于应用程序,但如果您不需要担心安全问题,则套接字可能是最好的选择。 SSL / Mutual auth 是您的下一步。

我自己编写了代码,但如果我必须再次操作,则会使用 Google 协议缓冲区。 http://code.google.com/p/protobuf/

它们似乎捕获了人们想要从 ASN1 中得到的许多内容(但并非全部混乱),并让您执行人们经常尝试对序列化的 Java 属性进行的操作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接