JSP file télécharger

<a href="DownloadServlet?fileName=殷志源03.jpg"> télécharger des photos </a>

emballer org.student.servlet; 

importation java.io.File;
importation java.io.FileInputStream;
importation java.io.IOException;
importation java.io.InputStream; 

importation javax.servlet.ServletException;
importation javax.servlet.ServletOutputStream;
importation javax.servlet.annotation.WebServlet;
importation javax.servlet.http.HttpServlet;
importation javax.servlet.http.HttpServletRequest;
importation javax.servlet.http.HttpServletResponse; 

importation org.apache.commons.io.IOUtils; 

/ ** 
 * Servlet classe d'implémentation DownloadServlet 
 * / 
@WebServlet ("/ DownloadServlet" )
 publique  classe DownloadServlet étend HttpServlet {
     privée  statique  finale  longue serialVersionUID = 1 litre ; 
       
    / ** 
     * @see HttpServlet # HttpServlet ()
      * / 
    publique DownloadServlet () {
         super ();
        // TODO stub constructeur généré automatiquement 
    } 

    / ** 
     * @see HttpServlet # doGet (HttpServletRequest demande, réponse HttpServletResponse)
      * / 
    protégé  videle doGet (HttpServletRequest demande, la réponse HttpServletResponse) jette ServletException, IOException {
         // 1 disposé de codage. 
        Request.setCharacterEncoding ( "UTF- 8." );
         // 2 acquiert le nom du fichier téléchargé 
        chaîne filename = request.getParameter ( "fileName" );    
         // 3 fichiers de téléchargement vous devez définir l' en- tête du message, ne peut pas résoudre le téléchargement en cours nom chinois brouillées 
        le Response.AddHeader ( « Content-type », « l'application / octet-stream »); // Type MIME: fichiers binaires (tout fichier) 
        le Response.AddHeader ( ; "Content-Disposition", "l'attachement; filename =" + fileName) // nom abc.txt: fileName contient l'extension de fichier
         // chemin absolu du fichier 4
        Chaîne Realpath = "D: \\ studyJspForUpload \\ newUpload" ;
        // 5.创建文件对象 
        fichier File = nouveau fichier (Realpath, fileName);
        si (! File.Exists ()) { 
            response.getWriter () d'écriture (. "文件不存在" );
            retour ; 
        } 
        IOUtils.copy ( nouveau FileInputStream (fichier), response.getOutputStream ()); 
    } 

    / ** 
     * @see HttpServlet # doPost (HttpServletRequest demande, HttpServletResponse réponse)
      * / 
    protégé  videdoPost (HttpServletRequest demande, HttpServletResponse réponse) jette ServletException, IOException {
         // TODO stub de méthode généré automatiquement 
        doGet (requête, réponse); 
    } 

}

 

Je suppose que tu aimes

Origine www.cnblogs.com/ejwbytshooting/p/12590047.html
conseillé
Classement