JavaScript must be enabled in order for you to view this page. However, it seems JavaScript is either disabled or not supported by your browser. To view this page, enable JavaScript by changing your browser options, then Try again! .

 
我的论坛
Google 网上论坛 Beta 版
Do Best Developer
访问此论坛

置于文件系统之外的web应用程序

今天的话题非常有趣!这和当初读Java VM规范中关于Class Loader部分时的感觉一样。如果需要可以将Java Class放到数据库中或网络上,等等,当然还可以想到更多 ... ,只是不放到文件系统中。如果没有需要就不要这么做,否则会很无聊。

该话题源于这里The Resources Component

通常使用tomcat只需要把web应用程序拷贝到$CATALINA_HOME/webapps目录下,此时web应用程序是以文件的形式存在于文件系统之中。我们对此已经习以为常了,然而tomcat还允许使用其它的方式:

  • 将web应用程序置于压缩的war文件中
  • 将web应用程序置于jar文件中
  • 将web应用程序置于zip文件中
  • ... ... 其它的一些流行的压缩格式
  • 将web应用程序置于数据库中
  • 将web应用程序置于版本库中
  • 将web应用程序置于自定义的格式中
  • ... ... 肯定还有很多

如果您要对相关web应用程序进行加密,这里也提供了一种可行的方法。例如可以将web应用中的每一个文件加密后压缩到一个zip文件中,也可以先将整个web应用置于zip文件中在对zip文件加密。

要完成上面描述的内容,需要自己实现javax.naming.directory.DirContext接口。在此之前可能需要仔细研究一下tomcat提供的一些实现,如FileDirContext和WARDirContext等。

这个话题中的内容是tomcat相关的,如果您不使用tomcat,那么您需要仔细查阅您的web服务器的文档。

最后,我们必须告诉大家:我们没有实现过上面描述的内容,因此也不知道将会遇到什么样的困难。这里只是描述一种可能。