欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java Spring MVC 上傳下載文件配置及controller方法詳解

 更新時間:2016年09月30日 16:47:29   作者:回魔一笑  
這篇文章主要介紹了Java Spring MVC 上傳下載文件配置及controller方法詳解,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下

下載:

1.在spring-mvc中配置(用于100M以下的文件下載)

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> 
<property name="messageConverters"> 
<list> 
<!--配置下載返回類型-->
<bean class="org.springframework.http.converter.ByteArrayHttpMessageConverter"/> 
<bean class="org.springframework.http.converter.StringHttpMessageConverter"> 
<!--配置編碼方式-->
<property name="supportedMediaTypes" value="application/json; charset=UTF-8" /> 
</bean> 
</list> 
</property> 
</bean>

下載文件代碼

@RequestMapping("/file/{name.rp}")
public ResponseEntity<byte[]> fileDownLoad(@PathVariable("name.rp")String name, HttpServletRequest request,HttpServletResponse response) {
// @PathVariable String name,
// @RequestParam("name")String name,
// System.out.println("<name>"+name);
// System.out.println(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
ResponseEntity<byte[]> re = null;
try {
/**
* css,js,json,gif,png,bmp,jpg,ico,doc,docx,xls,xlsx,txt,swf,pdf
* **/
//下載防止靜態(tài)加載干擾
Feelutile f=new Feelutile();
name=f.getfileformat(name);
String pathString="C:\\tempDirectory\\"+name; 
File file=new File(pathString);
HttpHeaders headers=new HttpHeaders();
//String filename=URLEncoder.encode(name, "UTF-8");//為了解決中文名稱亂碼問題 
String filename=new String(name.getBytes("utf-8"),"utf-8");
byte[] by=FileUtils.readFileToByteArray(file);
headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
//URLEncoder.encode(filename, "UTF-8")
headers.setContentDispositionFormData("attachment",filename);
headers.setContentLength(by.length);
re=new ResponseEntity<byte[]>(by, headers, HttpStatus.CREATED);
} catch (Exception e) {
e.printStackTrace();
try {
request.getRequestDispatcher("/error/404.jsp").forward(request, response);
} catch (ServletException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
return re;
}

上傳文件:

1在spring-mvc中配置

<!--4.文件上傳 配置 file upload -->
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding">
<value>UTF-8</value>
</property>
<property name="maxUploadSize">
<value>1048576000</value>
</property>
<property name="maxInMemorySize">
<value>40960</value>
</property>
</bean>

在controller中代碼如下

@RequestMapping(value="/upload", method = RequestMethod.POST)
@ResponseBody
public Json upload(Doc doc, @RequestParam("uploadFile") CommonsMultipartFile file) {
Json j = new Json();
try {
String realpath = this.servletContext.getRealPath("/upload"); 
String uploadFileFileName = file.getOriginalFilename(); 
String uploadFileFileNameWithoutSpace = uploadFileFileName.replaceAll(" ", ""); 
String fileType = uploadFileFileNameWithoutSpace.substring(uploadFileFileNameWithoutSpace.lastIndexOf("."));
File targetFile = new File(realpath+File.separator, uploadFileFileNameWithoutSpace);
if (targetFile.exists()) {
targetFile.delete();
}
file.getFileItem().write(targetFile); 
docService.upload(doc,uploadFileFileNameWithoutSpace);
j.setSuccess(true);
j.setMsg("Upload manual successfully");
}catch (Exception e) {
logger.error(ExceptionUtil.getExceptionMessage(e));
j.setMsg("Upload manual unsuccessfully");
}
return j;
}

以上所述是小編給大家介紹的Java Spring MVC 上傳下載文件配置及controller方法詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • java文件和目錄的增刪復制

    java文件和目錄的增刪復制

    這篇文章主要為大家詳細介紹了java文件和目錄的增刪復制,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • java微信開發(fā)API第三步 微信獲取以及保存接口調(diào)用憑證

    java微信開發(fā)API第三步 微信獲取以及保存接口調(diào)用憑證

    這篇文章主要為大家詳細介紹了java微信開發(fā)API第二步,微信獲取以及保存接口調(diào)用憑證,感興趣的小伙伴們可以參考一下
    2016-06-06
  • java實現(xiàn)FTP文件上傳與文件下載

    java實現(xiàn)FTP文件上傳與文件下載

    這篇文章主要為大家詳細介紹了java實現(xiàn)FTP文件上傳與文件下載的相關(guān)資料,通過以下兩種方式實現(xiàn),通過JDK自帶的API實現(xiàn),二是通過Apache提供的API是實現(xiàn),感興趣的小伙伴們可以參考一下
    2016-04-04
  • Java面試題沖刺第九天--MyBatis

    Java面試題沖刺第九天--MyBatis

    這篇文章主要為大家分享了最有價值的三道MyBatis框架面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Tomcat+Eclipse亂碼問題解決方法與步驟

    Tomcat+Eclipse亂碼問題解決方法與步驟

    亂碼問題是大家在日常開發(fā)過程中經(jīng)常會遇到的問題,由于各自環(huán)境的不同,解決起來也費時費力,本文主要介紹一般性亂碼問題的解決方法與步驟,開發(fā)工具采用Eclipse+Tomcat,統(tǒng)一設(shè)置項目編碼UTF-8為例,感興趣的朋友跟隨小編一起看看吧
    2023-08-08
  • Java深入淺出掌握SpringBoot之MVC自動配置原理篇

    Java深入淺出掌握SpringBoot之MVC自動配置原理篇

    在進行項目編寫前,我們還需要知道一個東西,就是SpringBoot對我們的SpringMVC還做了哪些配置,包括如何擴展,如何定制,只有把這些都搞清楚了,我們在之后使用才會更加得心應(yīng)手
    2021-10-10
  • Java zxing生成條形碼和二維嗎代碼實例

    Java zxing生成條形碼和二維嗎代碼實例

    這篇文章主要介紹了java zxing生成條形碼和二維嗎代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • 使用Java應(yīng)用程序添加或刪除 PDF 中的附件

    使用Java應(yīng)用程序添加或刪除 PDF 中的附件

    當我們在制作PDF文件或者PPT演示文稿的時候,為了讓自己的文件更全面詳細,就會在文件中添加附件,那么如何添加或刪除PDF中的附件呢,今天通過本文給大家詳細講解,需要的朋友參考下吧
    2023-01-01
  • java?Object轉(zhuǎn)Integer實現(xiàn)方式

    java?Object轉(zhuǎn)Integer實現(xiàn)方式

    這篇文章主要介紹了java?Object轉(zhuǎn)Integer實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Java中WeakHashMap的弱鍵回收機制

    Java中WeakHashMap的弱鍵回收機制

    這篇文章主要介紹了Java中WeakHashMap的弱鍵回收機制,WeakHashMap繼承AbstractMap,實現(xiàn)了Map接口,和HashMap一樣,WeakHashMap也是一個散列表,它存儲的內(nèi)容也是鍵值對(key-value)映射,而且鍵和值都可以是null,需要的朋友可以參考下
    2023-09-09

最新評論