resty upload无需依赖的文件上传与下载
作者:dreampie 时间:2023-01-17 14:54:31
1. 文件上传
a. 看看@FIEL注解的属性
/**
* 上传文件时使用该注解 设置文件相关参数
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
@Documented
public @interface FILE {
String dir() default "";//文件上传的目录
boolean overwrite() default false;//遇到同名文件是否覆盖,适合客户端控制文件名
Class<? extends FileRenamer> renamer() default DefaultFileRenamer.class;//对文件名字进行重命名处理
int max() default -1;//上传的大小限制,默认最大10M
String encoding() default "";//文件编码格式
String[] allows() default {}; //file content type eg. text/xml 允许上传的文件类型
}
b. 在application.properties设置上传的默认值
app.uploadDirectory=/upload/
#单位为b 如10M=1024*1024*10
app.uploadMaxSize= n
#拒绝上传的文件mime类型多个逗号分割
app.uploadDenieds=text/xml,text/csv
c. 在服务端使用@FILE注解来接收文件流数据
//上传文件
@POST
@FILE(dir="文件上传目录",overwrite=同名是否覆盖<适合客户端控制文件名>,renamer=继承FileRenamer class的对文件重命名的工具类 ,max=上传文件最大限制默认10m,encoding="文件编码",allows={"允许上传的文件类型如:text/xml"})
public UploadedFile upload(String filename, UploadedFile testfile, String des) {
//注意UploadedFile 参数的名字 需要和input的name对应
//如 <input type="file" name="x"> 用UploadedFile x来接收文件
//如果上传多个文件,使用Map<String,UploadedFile> files来接收所有的文件,key为input的name x
System.out.println(des);
return testfile;
}
2. 文件下载
a. 直接通过return file来向客户端输出文件
//下载文件 支持断点续传
@GET
public File download() {
return new File(getRequest().getRealPath("/") + "upload/resty.jar");
}
来源:https://dreampie.gitbooks.io/resty-chs/content/file.html
标签:resty,upload,无依赖,文件上传,文件下载
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
详解Java编程中JavaMail API的使用
2022-08-02 06:18:23
Java输入输出流的使用详细介绍
2023-08-01 22:21:22
![](https://img.aspxhome.com/file/2023/0/81880_0s.jpg)
VS2022调试通过海康摄像头烟火识别SDK的实现
2022-09-04 05:34:26
![](https://img.aspxhome.com/file/2023/9/129549_0s.jpg)
springboot使用Logback把日志输出到控制台或输出到文件
2022-05-30 17:34:30
![](https://img.aspxhome.com/file/2023/3/63763_0s.png)
从内存地址解析Java的static关键字的作用
2022-03-18 03:49:26
![](https://img.aspxhome.com/file/2023/2/86832_0s.png)
Android studio开发实现计算器功能
2022-02-12 19:43:05
![](https://img.aspxhome.com/file/2023/1/125521_0s.jpg)
java如何让带T的时间格式化
2022-12-22 10:44:28
![](https://img.aspxhome.com/file/2023/8/125238_0s.png)
C#正则表达式的6个简单例子
2022-12-15 04:50:16
Springboot 扫描mapper接口的2种操作
2022-08-04 03:28:54
![](https://img.aspxhome.com/file/2023/6/73106_0s.jpg)
C#自定义签名章实现方法
2022-08-02 05:22:37
C#窗体传值代码方法
2022-12-03 22:57:37
Android 创建与解析XML(四)——详解Pull方式
2023-06-03 07:10:23
![](https://img.aspxhome.com/file/2023/2/138652_0s.png)
Android创建简单发送和接收短信应用
2022-01-04 18:31:08
![](https://img.aspxhome.com/file/2023/0/106820_0s.png)
C#中IEnumerable、ICollection、IList、List之间的区别
2022-07-27 18:15:07
关于C++中菱形继承和虚继承的问题总结
2021-10-03 20:22:23
![](https://img.aspxhome.com/file/2023/1/120811_0s.png)
使用spring容器在初始化Bean时前和后的操作
2021-07-01 05:49:24
C#实现图书管理系统
2023-03-24 04:30:35
![](https://img.aspxhome.com/file/2023/9/106469_0s.jpg)
关于Mybatis与JPA的优缺点说明
2023-08-23 22:28:33
![](https://img.aspxhome.com/file/2023/0/58450_0s.jpg)
Android实现ImageView图片双击放大及缩小
2022-04-07 10:34:06
Java贪吃蛇游戏完善版
2023-04-12 03:07:53
![](https://img.aspxhome.com/file/2023/6/128846_0s.jpg)