zoukankan      html  css  js  c++  java
  • 手动搭建HTTP下载站点

    手动搭建HTTP下载站点

    index.jsp

    <%--Listfile.jsp--%>
    <%@ page import="java.io.File,java.text.SimpleDateFormat,java.util.Calendar"%>
    <%@ page contentType="text/html;charset=GB2312" language="java" %>
    <html>
    <head>
    <title>index</title>
    <style type="text/css">
    body {
        font-size: 9pt;
        background-color: #F0F0F0;
    }
    TABLE {
        background-color: #CCCCCC;
        font-size: 9pt;
    }
    TR {
        color: black;
        height: 22px;
        background-color: white
    }
    TR.header {
        color: #996600;
        height: 22px;
        background-color: #EBEBEB;
        cursor: hand
    }
    </style>
    </head>
    <body>
    <%!
        public void travelDirectory(String directory, JspWriter out) {
            try {
                File dir = new File(directory);
                if (dir.isFile()) // 判断是否是文件,如果是文件则返回。
                    return;
                File[] files = dir.listFiles(); // 列出当前目录下的所有文件和目录
                for (int i = 0; i < files.length; i++) {
                    if (files[i].isDirectory()) {
                        continue;
                    } // 如果是目录,则继续遍历该目录
                    // travelDirectory(files[i].getAbsolutePath(),out);
                    if(files[i].getName().equals("index.jsp")){
                        continue;
                    }
                    String fn = files[i].getName();
                    String fs = files[i].length()/(1024 * 1024) + "M";
                    Calendar cal = Calendar.getInstance();
                    long time = files[i].lastModified();
                    SimpleDateFormat formatter = new SimpleDateFormat(
                            "yyyy-MM-dd HH:mm:ss");
                    cal.setTimeInMillis(time);
                    String ft = formatter.format(cal.getTime());
                    String tr = "<tr><td><a href='" + fn + "' target='_blank'>" + fn + "</a></td>";
                    tr += "<td>" + fs + "</td>";
                    tr += "<td>" + ft + "</td></tr>";
                    out.println(tr); // 输出该目录或者文件的名字
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    %>
    <%
        //将当前web程序目录结构输出到控制台
        String path=pageContext.getServletContext().getRealPath(request.getServletPath());
        String dir=new File(path).getParent(); 
        out.println("<div align='center'>软件下载界面,点击文件名称下载</div><table align='center'>");
        out.println("<tr class='header'><td>文件名称</td><td>大小(M)</td><td>修改时间</td></tr>");
        travelDirectory(dir,out);
        out.println("</table>");
    %>
    </body>
    </html>

    web.xml

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
        <display-name>Welcome to download</display-name>
        <description>
            Welcome to download
        </description>
        <mime-mapping>
            <extension>zip</extension>
            <mime-type>application/zip</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>rar</extension>
            <mime-type>application/rar</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>exe</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>iso</extension>
            <mime-type>application/octet-stream</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>docx</extension>
            <mime-type>application/doc</mime-type>
        </mime-mapping>
        <mime-mapping>
            <extension>doc</extension>
            <mime-type>application/doc</mime-type>
        </mime-mapping>
    </web-app>
  • 相关阅读:
    Docker的安装和scrapy-splash的安装
    scrapyd打包到服务器运行
    一些python的简单有用方法
    NFS学习
    apache配置https加密传输
    httpd基于域名不同的虚拟主机配置
    Openssl创建私有CA
    NODEJS版本控制和切换
    HyperV使用Centos系统安装FTP服务
    装Anaconda报错This Python interpreter is in a conda environment, but the environment has not been activated. Libraries may fail to load. To activate this environment please see http://conda.io/activation
  • 原文地址:https://www.cnblogs.com/stono/p/8375737.html
Copyright © 2011-2022 走看看