国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - struts2實現文件下載功能實例

struts2實現文件下載功能實例

2021-04-18 14:41平凡的華仔 Java教程

這篇文章主要為大家詳細介紹了struts2實現文件下載功能實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了struts2下實現文件下載功能實例,供大家參考,具體內容如下

下面以實現一個圖片下載功能為例:

1. 項目結構

struts2實現文件下載功能實例

2. web.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?xml version="1.0" encoding="utf-8"?>
<web-app version="3.0"
 xmlns="http://java.sun.com/xml/ns/javaee"
 xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
 xsi:schemalocation="http://java.sun.com/xml/ns/javaee
 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 
 <!-- 設置struts 2過濾器 -->
 <filter>
  <filter-name>struts 2</filter-name>
  <filter-class>org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter</filter-class>
 </filter>
 <filter-mapping>
  <filter-name>struts 2</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 
 
 <!-- 設置歡迎頁面 -->
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 
 <!-- session超時定義,單位為分鐘 -->
 <session-config>
  <session-timeout>30</session-timeout>
 </session-config>
 
</web-app>

3.downloadaction.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package com.action;
 
import java.io.inputstream;
import org.apache.struts2.servletactioncontext;
import com.opensymphony.xwork2.actionsupport;
 
public class downloadaction extends actionsupport{
 private static final long serialversionuid = 1l;
 //文件路徑
 private string path;
  
 //path屬性的getter方法
 public string getpath(){
  return path;
 }
 //path屬性的setter方法
 public void setpath(string path){
  this.path = path;
 }
 //返回inputstream,文件下載關鍵方法
 public java.io.inputstream getdownloadfile() throws exception{
  inputstream in = servletactioncontext.getservletcontext().getresourceasstream(getpath());
  return in;
 }
 public string execute() throws exception{
  return success;
 }
}

4.struts.xml

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="utf-8" ?>
<!doctype struts public "-//apache software foundation//dtd struts configuration 2.1//en" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
  <!-- 配置 struts 2 應用中的常量 -->
  <constant name="struts.i18n.encoding" value="utf-8" />
   <!-- 配置上傳文件的最大容量,struts2默認為2m。單位是1b, 1kb=1024b,1m=1024kb,1m=1024*1024b-->
   <constant name="struts.multipart.maxsize" value="1048576" />
  
  
  <!-- 配置本應用中的包,繼承 struts-default 包 -->
  <package name="filedownload" namespace="/" extends="struts-default">
   <action name="download" class="com.action.downloadaction">
    <!-- 設置文件路徑的參數,傳到action類文件中去 -->
    <!-- <param name="path">\download\a.jpg</param> -->
    <!-- 下載文件類型定義,即定義為“stream” -->
    <result name="success" type="stream">
     <!-- image/jpeg代表jpg圖片 -->
     <param name="contenttype">image/jpeg</param>
     <!-- 下載文件處理方法 -->
     <param name="contentdisposition">
      <!-- attachment表示附件方式,即下載時打開保存對話窗,filename表示下載時顯示的保存時的文件名 -->
       <!-- 如果不寫attachment;或者是寫的是inline; 則表示內聯,即會在瀏覽器中嘗試打開下載的文件,而不是下載-->
      attachment;filename="a.jpg"  
     </param>
     <!-- 下載文件輸出流定義 -->
      <!-- 這里的inputname元素所對應的value值downloadfile,在action中一定要有對應的getdownloadfile()方法 -->
     <param name="inputname">downloadfile</param>
     <!-- 下載緩沖區的大小 -->
     <param name="buffersize">1024</param>
    </result>
   </action>
  </package>
</struts>

5.index.jsp

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<%@ page language="java" import="java.util.*" pageencoding="utf-8"%>
<%
string path = request.getcontextpath();
string basepath = request.getscheme()+"://"+request.getservername()+":"+request.getserverport()+path+"/";
%>
 
<!doctype html public "-//w3c//dtd html 4.01 transitional//en">
<html>
 <head>
 <base href="<%=basepath%>" rel="external nofollow" >
 <title>首頁</title>
 </head>
 <body>
 <center>
  歡迎來到首頁,點下面鏈接去下載一個文件<br />
  <a href="download.action?path=<%=" rel="external nofollow" ./download/a.jpg" %>">下載</a> 
 </center>
 </body>
</html>

  6.文件路徑

項目中要提前建立好download目錄,和里面要存在有a.jpg文件,否則,下載會失敗。

7.功能入口

項目發布到服務器后,用瀏覽器訪問項目中的index.jsp ,點擊下載鏈接,就可以彈出“下載”對話框。

原文鏈接:https://blog.csdn.net/wangcunhuazi/article/details/41171707

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 久久久久高清视频 | 久久精品亚洲精品 | 中文字幕不卡一区 | 国产精品网站在线观看 | 成人午夜视频网 | 激情欧美一区二区三区中文字幕 | 欧美精品影院 | 成人免费观看www的片 | av电影免费观看 | 色五月激情综合网 | 美女视频一区二区三区 | 精品一区二区三区在线视频 | 午夜看片| 日日夜夜国产 | 一级黄色大片免费观看 | 中文字幕精品一区久久久久 | 九色91九色porny永久 | 日韩中文字幕视频在线 | 激情欧美一区二区三区中文字幕 | 色之久久综合 | 欧美激情一区二区三区在线视频 | 综合久久一区 | 国产一级黄 | 91se在线| 成人免费黄色大片 | www.四虎.com| 999精品视频 | 精品欧美乱码久久久久久 | 91精品国产综合久久久久久丝袜 | 亚洲在线精品 | 国产精品成人国产乱一区 | 天天爽夜夜爽夜夜爽精品视频 | 啪啪伊人 | 91丝袜| 四虎影视永久免费观看 | 国产一区二区三区久久 | 欧美在线观看免费观看视频 | 成年人免费在线观看网站 | 国产精品久久久久国产a级 九九在线精品视频 | 亚洲欧美一级久久精品 | 视频一区二区三区在线观看 |