通过java代码实现下载功能,代码如下:(输入流和输出流实现)

public String download() {
 response.setContentType("application/x-download");  
 String filedownload = 文件路径(绝对路径); 
 String filedisplay = 文件名称;
 filedisplay = URLEncoder.encode(filedisplay,"UTF-8");(如果文件名称加密,使用此代码具有解密功能)
 response.addHeader("Content-Disposition","attachment;filename=" + filedisplay);  
 OutputStream outp = null;  
 FileInputStream in = null;  
   try{  
        outp = response.getOutputStream();  
        in = new FileInputStream(filedownload);  
         byte[] b = new byte[1024];  
            int i = 0;  
          while((i = in.read(b)) > 0)  {  
               outp.write(b, 0, i);  
         }  
           outp.flush();  
      } catch(Exception e){  
         System.out.println("Error!");  
          e.printStackTrace();  
       }finally{  
            if(in != null)  
             {  
               try {
 in.close();
 } catch (IOException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }  
              in = null;  
            }  
           if(outp != null)  
            {  
                try {
 outp.close();
 } catch (IOException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }  
               outp = null;  
           }  
        } 
   return null; }

还可以通过a链接的方式实现下载功能:
<a href="<%=basePath %>文件的相对路径?downloadfile=true&可传递参数">下载文件</a>