达内云笔记(六) 文件上传下载
来源:互联网 发布:知乎 复制 编辑:程序博客网 时间:2024/06/16 19:27
RequestMapping(value="" produces="content-type")
ResponseBody 如果是java bean就处理为Json,如果是byte[] 就将byte数组填充到返回消息的body中
ByteArrayOutputStream用内存数组为输出目标
BufferedImage img = new BufferedImage(200,56,BufferedImage.TYPE_3BYTE_BGR);
ByteArrayOutputStream out = new ByteArrayOutputStream();
ImageIO.write(img,"png",out);
byte[] png = out.toByteArray();
return png;
会自动设置content-length即 数组长度
下载:
图片
res.addHeader("Content-Disposition","attachment;filename=\"girl.png\""); (查HTTP协议和Tomcat web文件)
Excel(word):
导包 POI 3.12(可以操纵word)
//content-type
@RequestMapping(value="" produces="application/vnd.ms-excel")
res.addHeader("Content-Disposition","attachment; filename=\"hello.xls\"");
//创建Excel工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook();
//在工作簿中创建工作表
HSSFSheet sheet = workbook.createSheet();
//创建一行
HSSFRow row = sheet.createRow(0);
//创建一个格子
row.createCell(0);
//向格子填充数据
cell.setCellValue("Hello World!");
//将Excel对象序列化为byte[]数据
ByteArrayOutputStream out = new ByteArrayOutputSream();
workbook.write(out);
byte[] buf = out.toByteArray();
return buf;
上传:
浏览器端:
HTTP协议:Form-based File Upload in HTML
<FORM ENCTYPE="multipart/form-data" Action = "" Method="post">
<INPUT NAME="" TYPE="file"/>
</FORM>
服务器端:
导包:
commons-fileupload.jar→ Spring MVC对其封装→ Controller方法的参数名为上传的文件名 MultipartFile 文件名
需要配置:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
Java代码:
String filename = photo.getOriginalFilename();
String type = file.getContentType();
byte[] data = file.getBytes();
File file = new File("d:/",filename);
FileOutputStream out = new FileOutputStream(file);
out.write(data);
out.close();
ResponseBody 如果是java bean就处理为Json,如果是byte[] 就将byte数组填充到返回消息的body中
ByteArrayOutputStream用内存数组为输出目标
BufferedImage img = new BufferedImage(200,56,BufferedImage.TYPE_3BYTE_BGR);
ByteArrayOutputStream out = new ByteArrayOutputStream();
ImageIO.write(img,"png",out);
byte[] png = out.toByteArray();
return png;
会自动设置content-length即 数组长度
下载:
图片
res.addHeader("Content-Disposition","attachment;filename=\"girl.png\""); (查HTTP协议和Tomcat web文件)
Excel(word):
导包 POI 3.12(可以操纵word)
//content-type
@RequestMapping(value="" produces="application/vnd.ms-excel")
res.addHeader("Content-Disposition","attachment; filename=\"hello.xls\"");
//创建Excel工作簿对象
HSSFWorkbook workbook = new HSSFWorkbook();
//在工作簿中创建工作表
HSSFSheet sheet = workbook.createSheet();
//创建一行
HSSFRow row = sheet.createRow(0);
//创建一个格子
row.createCell(0);
//向格子填充数据
cell.setCellValue("Hello World!");
//将Excel对象序列化为byte[]数据
ByteArrayOutputStream out = new ByteArrayOutputSream();
workbook.write(out);
byte[] buf = out.toByteArray();
return buf;
上传:
浏览器端:
HTTP协议:Form-based File Upload in HTML
<FORM ENCTYPE="multipart/form-data" Action = "" Method="post">
<INPUT NAME="" TYPE="file"/>
</FORM>
服务器端:
导包:
commons-fileupload.jar→ Spring MVC对其封装→ Controller方法的参数名为上传的文件名 MultipartFile 文件名
需要配置:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="1000000"/>//文件大小限制这里是1000kb
</bean>Java代码:
String filename = photo.getOriginalFilename();
String type = file.getContentType();
byte[] data = file.getBytes();
File file = new File("d:/",filename);
FileOutputStream out = new FileOutputStream(file);
out.write(data);
out.close();
阅读全文
0 0
- 达内云笔记(六) 文件上传下载
- java文件上传下载笔记
- 笔记--文件上传下载
- 后台学习六---ajaxFileupload文件上传下载
- Struts2实现文件上传下载笔记
- Struts2实现文件上传下载笔记
- 文件的上传下载---struts2学习笔记
- Servlet笔记 (九) 过滤器及文件上传下载
- Struts学习笔记: 实现文件上传下载
- springmvc笔记-7-文件上传下载,拦截器
- SpringMVC笔记(五)文件的上传下载
- JavaWeb 实现文件上传下载(笔记)
- 文件上传下载
- 文件上传下载
- 上传下载文件
- 文件上传下载
- 文件上传下载
- 文件上传下载
- 欧拉回路--输出欧拉回路的路径
- Jquery_Dom操作
- AS格式化代码时注解不换行
- 欢聚时代2017校招笔试题目(JAVA基础类)A卷--9
- JVM内存管理机制
- 达内云笔记(六) 文件上传下载
- Android使用ViewDragHelper实现侧滑菜单(一)
- PowerMockito使用详解
- UnicodeDecodeError: 'utf8' codec can't decode byte 0xd1 in position 0: invalid continuation byte问题
- iPhone 7复制Android手机的7种方式
- 老毛桃
- 委托_多播委托
- Linux 上的轻量级浏览器
- IT史记:愤怒的杰里·桑德斯