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,无依赖,文件上传,文件下载
0
投稿

猜你喜欢

  • 详解Java编程中JavaMail API的使用

    2022-08-02 06:18:23
  • Java输入输出流的使用详细介绍

    2023-08-01 22:21:22
  • VS2022调试通过海康摄像头烟火识别SDK的实现

    2022-09-04 05:34:26
  • springboot使用Logback把日志输出到控制台或输出到文件

    2022-05-30 17:34:30
  • 从内存地址解析Java的static关键字的作用

    2022-03-18 03:49:26
  • Android studio开发实现计算器功能

    2022-02-12 19:43:05
  • java如何让带T的时间格式化

    2022-12-22 10:44:28
  • C#正则表达式的6个简单例子

    2022-12-15 04:50:16
  • Springboot 扫描mapper接口的2种操作

    2022-08-04 03:28:54
  • C#自定义签名章实现方法

    2022-08-02 05:22:37
  • C#窗体传值代码方法

    2022-12-03 22:57:37
  • Android 创建与解析XML(四)——详解Pull方式

    2023-06-03 07:10:23
  • Android创建简单发送和接收短信应用

    2022-01-04 18:31:08
  • C#中IEnumerable、ICollection、IList、List之间的区别

    2022-07-27 18:15:07
  • 关于C++中菱形继承和虚继承的问题总结

    2021-10-03 20:22:23
  • 使用spring容器在初始化Bean时前和后的操作

    2021-07-01 05:49:24
  • C#实现图书管理系统

    2023-03-24 04:30:35
  • 关于Mybatis与JPA的优缺点说明

    2023-08-23 22:28:33
  • Android实现ImageView图片双击放大及缩小

    2022-04-07 10:34:06
  • Java贪吃蛇游戏完善版

    2023-04-12 03:07:53
  • asp之家 软件编程 m.aspxhome.com