2013-03-14 88 views
0

我努力让自己在一个Mysql数据库顶部的保险丝文件系统,并以此从Windows客户端这个客户端请求FUSE实现上Java服务器传递在SAMBA上的linux端 !!与C和Java

我需要知道如何设置这种实施

工作的:

步骤1:在Windows客户端将登录。

步骤2:登录后,用户发出'ls'命令。

步骤3:此命令应该被处理连线为C函数

步骤4:反过来C函数发出命令如使用JSONCpp或储蓄

步骤5的参数Java服务器:该函数调用在Linux上运行的Java服务器上运行。

步骤6:Java服务器与MySQL数据库进行交互并获取结果

步骤7:该结果应的窗口上客户机终端上显示。

回答

0

我不完全明白你想用哪种语言调用哪种语言功能。

但是,跨语言交流有两种主要方式。

  • 您可以简单地使用套接字。在语言A的程序中创建一个套接字连接,用于监听特定的端口。在另一种语言B中,将参数传递给正在监听输入的A程序中的函数。它将执行该功能并将输出返回给B的程序。您可以轻松找到JAVA和C联机的套接字示例。

  • 通过扩展语言沟通。这比套接字更低级。它基本上是用不同语言B的另一种语言A调用函数/库。例如,您可以将Python扩展为C like this。您可以使用Java Native Interface从JAVA调用C库函数。

根据您的使用和舒适度级别,您可以使用上述任何方法来实现跨语言服务。

1
  1. 编写具有您要处理的回调的熔丝文件系统。
  2. 通过Java代码监听的本地套接字转发熔丝回调。
  3. Java服务器运行查询并通过套接字返回结果(在2中)。
  4. 保险丝系统返回它从插座读取的信息(2)
  5. 将保险丝系统分享到桑巴舞。
+0

非常感谢!任何关于FS提供此服务的Fuse Filesystem或Skeletal视图的想法?因为我在期限内! – 2013-03-14 07:18:26

+0

对不起,不知道,但好像你可以找到一些模板保险丝例子快速启动。祝你好运:) – perreal 2013-03-14 07:23:19

+0

这很好! ..谢谢!!! – 2013-03-14 07:25:21

0

对于窗户边,你可以用DokanMirror开始。实现大多数回调,并且是一个足够好的框架。 Linux端将主要是你自己的代码,所以作为Socket接口。 使用TCP/IP套接字是一个矫枉过正的选择要谨慎线程挂起和超时。

a。使登录成为一个用户空间应用程序,它将直接连接到你的linux端并进行身份验证。 b。然后,这个用户空间应用程序将安装并挂载一个虚拟驱动器(使用dokan)。 c。在dokan-callbacks(用户空间)中,您可以使用tcp/ip连接到您的linux机器。

你什么了桑巴意思?如果你打算分享你的文件系统,那么perreal的答案(第5点)是正确的。