我有一个文档管理系统,可以将文档存储在数据库中。我正在寻找一种简单的方法(没有太多和复杂的协议来实现)将数据库显示为Windows中的驱动器(因此可以使用任何Windows程序(如资源管理器或办公室)浏览和操作。
我有一些想法,我提供某种网络共享,可以在Windows中作为驱动器安装。不幸的是,所有用于文件共享的候选网络协议似乎都需要付出大量的努力才能实现。
我首先考虑了CIFS,但在阅读之后很快就决定将其 BY FAR 复杂化,以便我实施。接下来就是NFS,但它本身并不受Windows(XP)的支持,而且实现起来也很复杂。 FTP可能是一个选项,但实现FTP服务器再次比我天真的预期复杂得多。
可能有一个更简单的协议可供使用我没有想过。
为此目的,我能否(ab)轻松使用? 理想情况下,我想要某种(纯Java)预制服务器,我可以轻松地删除访问本地文件系统的部分,并用我自己的访问数据库的代码替换它或者一个简单的协议,我可以合理地快速地实现它更重要的是,兼容性和可靠性。
答案 0 :(得分:0)
首先,您需要在DBS和数据库之间建立正确的绑定,并在程序中定义/编写API,以便轻松访问所需的资源。编写API将允许您将解决方案与可能希望稍后添加的其他服务或插件的可操作性最大化。
之后,您应该通过宽松而强大的协议(例如WebDav代表基于Web的分布式创作和版本控制)向客户端提供此服务。他本身受Windows支持,你可以通过这种方式与实现WebDav(Windows,大多数Web浏览器......)的每个服务进行交互,当然你也可以将这种服务作为虚拟驱动器安装。另外,Linux和MacOS X也支持它,我相信本来可以,但我不确定。实际上,WebDav是HTTP的扩展,并在RFC 4918中进行了描述。
基本上,每个用于Java的HTTP(处理服务器端响应管理)库都可以用来实现WebDav,如果你有一些时间并希望自己做。
为了以一种可接受的方式实现WebDav,我在网上搜索了一些Java库,找到了这些库,现在由您来决定哪一个真正符合您的需求:
将WebDav协议的一些现有实现列表放到WebDAV.org上的开源项目中(您可以找到一些非常棒的项目,例如The Jakarta Slide项目,尽管我认为它不再受支持了其他项目/图书馆,显示了今天WebDav的重要性)。 http://www.webdav.org/projects/