java - FTP 看起来像 java/HTML 中的应用程序

标签 java html jsp web-applications

开发类似于下面所示的 FTP 应用程序的更好方法是什么?

它将允许我的项目中的人员下载我们使用的所有可安装软件,例如 IBM Websphere (1 GB)eclipse (500 MB) 以及许多其他软件软件大小从 2.5 GB 到 500 MB 不等,托管在 Red Hat Linux 中

  1. 是否最好只安装 Apache HTTP Server 并将 DocumentRoot 设置为源目录,然后由 Apache 完成剩下的工作?

    DocumentRoot "/hosting/softwares"
    

enter image description here

  • 使用 HTML/JSP 编写一个简单的 JAVA/J2EE Web 应用程序来生成上面的 View ,并使用下面的伪代码。但是我认为读取如此大的文件不是一个好主意JAVA。

    File downloadFile = new File(filePath);
    FileInputStream inStream = new FileInputStream(downloadFile);
    
    response.setContentType(mimeType);
    response.setContentLength((int) downloadFile.length());
    
    
    String headerKey = "Content-Disposition";
    String headerValue = String.format("attachment; filename=\"%s\"",  downloadFile.getName());
    response.setHeader(headerKey, headerValue);
    
    // obtains response's output stream
    OutputStream outStream = response.getOutputStream();
    
    byte[] buffer = new byte[4096];
    int bytesRead = -1;
    
    while ((bytesRead = inStream.read(buffer)) != -1) {
        outStream.write(buffer, 0, bytesRead);
    }
    
    inStream.close();
    outStream.close();   
    
  • 是否有其他方法可以完成此任务,例如使用 HTML 或任何其他框架。

    最佳答案

    如果您的文件是 100% 静态并从磁盘提供服务,那么 Apache 是最简单、最高效的选择。您仍然可以提供静态 index.html 文件来改进导航和外观。

    wiki 还提供了轻松安全的文件上传的额外好处。您应该查看 wiki,但设置比 Apache 更复杂。

    Web 应用程序服务器(servlet/JSP、J2EE、.NET...)并不真正相关,因为它们是用于动态内容的。它们当然可以提供静态内容,但用于您的目的就有点过分了,除非您的文件需要存储在数据库而不是文件系统中。

    关于java - FTP 看起来像 java/HTML 中的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33071099/

    相关文章:

    java - 将 java linux 进程留给用户或操作系统控制

    java - 导航回可重用 Activity

    javascript - 我可以将字符串参数传递给 onclick javascript 函数吗?

    css - 样式表上的 Grails NumberFormatException

    java - 具有现有类和模式的 jaxb

    java - 如何使用数组/数组列表将值更改为星号

    html - 在 Windows 上调试 Ipad Web 应用程序

    javascript - Bootstrap 4.2.1 - 无法在 'querySelector' : 'Document' is not a valid selector 上执行 'javascript:void(0);'

    javascript - 退格键和空格键在 Firefox 中不起作用

    javascript - Angularjs data-ng-click 不会第二次工作......怎么办?