zoukankan      html  css  js  c++  java
  • 网站文件下载链接

    如何将网站上的文件让别人下载呢?

      最简单的方式就是直接把文件的链接地址放到页面上,如一个a链接,点击该链接直接访问文件,即会下载。

      经过测试,不提供文件地址,访问一个servlet,返回该文件地址也可以下载文件。这种方式的好处隐藏了文件的真实地址,还可以在下载前对下载行为进行判断,如是否登录。对于没有登录的用户可以提示他登录不会下载文件。在servlet中下载文件的文件名依据web.xml中的url-pattern决定。

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
      <display-name>down</display-name>
      <servlet>
        <servlet-name>inst1</servlet-name>
        <servlet-class>com.lh.down.test</servlet-class>
      </servlet>
      <servlet-mapping>
        <servlet-name>inst1</servlet-name>
        <url-pattern>/inst1.exe</url-pattern>
      </servlet-mapping>
      <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
      </welcome-file-list>
    </web-app>

     

     1 package com.lh.down;
     2 
     3 import java.io.IOException;
     4 
     5 import javax.servlet.RequestDispatcher;
     6 import javax.servlet.ServletException;
     7 import javax.servlet.http.HttpServlet;
     8 import javax.servlet.http.HttpServletRequest;
     9 import javax.servlet.http.HttpServletResponse;
    10 
    11 public class test extends HttpServlet {
    12     @Override
    13     protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    14         RequestDispatcher dispatcher = req.getRequestDispatcher("/jsp/inst.exe");
    15         dispatcher .forward(req, resp);
    16     }
    17     
    18     @Override
    19     protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    20         doGet(req, resp);
    21     }
    22 }

     访问url-pattern,即会下载文件。

  • 相关阅读:
    Oracle数据库测试和优化最佳实践: OTest介绍 (转)
    Oracle数据库中心双活之道:ASM vs VPLEX (转)
    awrcrt更新到2.1(重大更新)
    Oracle性能图表工具:awrcrt.sql 介绍,更新到了2.14 (2018年3月31日更新)
    java虚拟机---内存
    如何进行高效的学习
    OpenGL绘制自由落体小球
    MDA系统分析实战--图书馆管理系统
    Python爬虫实战---抓取图书馆借阅信息
    Python--urllib3库详解1
  • 原文地址:https://www.cnblogs.com/duex/p/6376331.html
Copyright © 2011-2022 走看看