最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaWeb利用struts實現(xiàn)文件下載時改變文件名稱

 更新時間:2016年06月29日 10:38:19   投稿:lijiao  
這篇文章主要為大家詳細介紹了JavaWeb利用struts實現(xiàn)文件下載時改變文件名稱的相關(guān)資料,需要的朋友可以參考下

先看看效果圖:

package com.fenghuo.struts.download;

import java.net.URLEncoder;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DownloadAction;

import com.fenghuo.music.util.FileUtils;

public class DownLoad extends DownloadAction {

@Override
protected StreamInfo getStreamInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//獲取資源文件的名稱
String resname = request.getParameter("resname");

//利用struts下載資源
return new DownloadAction.ResourceStreamInfo("audio/x-mpeg", this
.getServlet().getServletContext(), "/resource/music/" + resname);
}

@Override
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
//向瀏覽器發(fā)送消息頭,使文件以附件的方式打開,并找到資源名對應的文件名稱發(fā)送給瀏覽器
String resname = request.getParameter("resname");

FileUtils fu = new FileUtils(this.getServlet().getServletContext());
Map<String,String> musmap = fu.getMusmap();
String name = musmap.get(resname);

//同時對文件名進行編碼。在FireFox下還是有亂碼,不明白原因,望指教。
response.setHeader("content-disposition", "attachment;filename="
+ URLEncoder.encode(name, "UTF-8"));
return super.execute(mapping, form, request, response);
}
}


以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • java.lang.Instrument 代理Agent使用詳細介紹

    java.lang.Instrument 代理Agent使用詳細介紹

    這篇文章主要介紹了java.lang.Instrument 代理Agent使用詳細介紹的相關(guān)資料,附有實例代碼,幫助大家學習參考,需要的朋友可以參考下
    2016-11-11
  • springboot啟動后和停止前執(zhí)行方法示例詳解

    springboot啟動后和停止前執(zhí)行方法示例詳解

    這篇文章主要介紹了springboot啟動后和停止前執(zhí)行方法,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • java實現(xiàn)簡單銀行管理系統(tǒng)

    java實現(xiàn)簡單銀行管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java實現(xiàn)簡單銀行管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • Java與Android使用監(jiān)聽者模式示例

    Java與Android使用監(jiān)聽者模式示例

    這篇文章主要為大家介紹了Java與Android使用監(jiān)聽者模式示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • 簡單了解Java關(guān)鍵字throw和throws的區(qū)別

    簡單了解Java關(guān)鍵字throw和throws的區(qū)別

    這篇文章主要介紹了簡單了解Java關(guān)鍵字throw和throws的區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Java動態(tài)代理和AOP應用示例

    Java動態(tài)代理和AOP應用示例

    這篇文章主要介紹了Java動態(tài)代理和AOP應用,結(jié)合實例形式分析了java動態(tài)代理在AOP面向切面編程中的相關(guān)操作技巧與使用注意事項,需要的朋友可以參考下
    2019-07-07
  • 基于Java Springboot + Vue + MyBatis實現(xiàn)音樂播放系統(tǒng)

    基于Java Springboot + Vue + MyBatis實現(xiàn)音樂播放系統(tǒng)

    這篇文章主要介紹了一個完整的音樂播放系統(tǒng)是基于Java Springboot + Vue + MyBatis編寫的,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • 劍指Offer之Java算法習題精講鏈表與字符串及數(shù)組

    劍指Offer之Java算法習題精講鏈表與字符串及數(shù)組

    跟著思路走,之后從簡單題入手,反復去看,做過之后可能會忘記,之后再做一次,記不住就反復做,反復尋求思路和規(guī)律,慢慢積累就會發(fā)現(xiàn)質(zhì)的變化
    2022-03-03
  • Java設(shè)計模式之裝飾者模式詳解和代碼實例

    Java設(shè)計模式之裝飾者模式詳解和代碼實例

    這篇文章主要介紹了Java設(shè)計模式之裝飾者模式詳解和代碼實例,Decorator模式(別名Wrapper):動態(tài)將職責附加到對象上,若要擴展功能,裝飾者提供了比繼承更具彈性的代替方案,需要的朋友可以參考下
    2014-09-09
  • java實現(xiàn)輕輕松松控制臺斗地主的示例代碼

    java實現(xiàn)輕輕松松控制臺斗地主的示例代碼

    這篇文章主要介紹了java實現(xiàn)輕輕松松控制臺斗地主,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04

最新評論

怀化市| 元朗区| 阿拉善左旗| 乐陵市| 卢氏县| 彭水| 沂源县| 新乡县| 永宁县| 虹口区| 富川| 拉萨市| 荣昌县| 三明市| 安西县| 阳谷县| 鄂尔多斯市| 奉节县| 荆州市| 和平区| 乾安县| 类乌齐县| 聂拉木县| 尼玛县| 嘉荫县| 兴文县| 仁寿县| 麻城市| 平罗县| 靖宇县| 南皮县| 汨罗市| 大竹县| 二手房| 永川市| 运城市| 阿荣旗| 莱州市| 富阳市| 崇信县| 嵊州市|