resty upload无需依赖的文件上传与下载

 更新时间:2022年03月07日 15:02:41   作者:dreampie  
这篇文章主要为大家介绍了resty upload中无需依赖的文件上传与下载过程,有需要的朋友可以借鉴参考下,希望能够有所帮助祝大家多多进步,早日升职加薪

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");
}

以上就是resty upload无需依赖的文件上传与下载的详细内容,更多关于resty upload无依赖文件上传下载的资料请关注脚本之家其它相关文章!

相关文章

  • 基于Gradle搭建Spring 5.3.13-release源码阅读环境的详细流程

    基于Gradle搭建Spring 5.3.13-release源码阅读环境的详细流程

    这篇文章主要介绍了基于Gradle搭建Spring 5.3.13-release源码阅读环境,首先安装jdk、gradle等一系列必要操作,本文通过实例代码相结合给大家讲解的非常详细,需要的朋友可以参考下
    2022-04-04
  • Java中条件运算符的嵌套使用技巧总结

    Java中条件运算符的嵌套使用技巧总结

    在Java中,我们经常需要使用条件运算符来进行多个条件的判断和选择,条件运算符可以简化代码,提高代码的可读性和执行效率,本文将介绍条件运算符的嵌套使用技巧,帮助读者更好地掌握条件运算符的应用,需要的朋友可以参考下
    2023-11-11
  • Java 基础语法

    Java 基础语法

    这篇文章主要介绍了Java 基础语法,Java 是一门面向对象的解释型编程语言,面向对象 意味着我们应该把一个 Java 程序看作一系列对象的集合,我们的工作就是构建这些对象,并通过调用彼此的方法来让各种对象协同工作,解决实际的问题,下面文章内容需要的朋友可以参考下一
    2021-11-11
  • Java 实战项目锤炼之小区物业管理系统的实现流程

    Java 实战项目锤炼之小区物业管理系统的实现流程

    读万卷书不如行万里路,只学书上的理论是远远不够的,只有在实战中才能获得能力的提升,本篇文章手把手带你用java+SSM+jsp+mysql+maven实现一个小区物业管理系统,大家可以在过程中查缺补漏,提升水平
    2021-11-11
  • Mybatis-plus与Mybatis依赖冲突问题解决方法

    Mybatis-plus与Mybatis依赖冲突问题解决方法

    ,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧这篇文章主要介绍了Mybatis-plus与Mybatis依赖冲突问题解决方法
    2021-04-04
  • java实现归并排序算法

    java实现归并排序算法

    归并排序:是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。 本文我们就来详细的探讨下。
    2015-04-04
  • 基于mybatis batch实现批量提交大量数据

    基于mybatis batch实现批量提交大量数据

    这篇文章主要介绍了基于mybatis batch实现批量提交大量数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • IDEA创建Maven一直爆红无法下载的问题解决办法

    IDEA创建Maven一直爆红无法下载的问题解决办法

    这篇文章主要介绍了关于IDEA创建Maven一直爆红无法下载的问题的解决办法,文中图文结合的方式给大家讲解的非常详细,对大家解决办法非常有用,需要的朋友可以参考下
    2024-06-06
  • 解决Mybatis中mapper.xml文件update,delete及insert返回值问题

    解决Mybatis中mapper.xml文件update,delete及insert返回值问题

    这篇文章主要介绍了解决Mybatis中mapper.xml文件update,delete及insert返回值问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • JPA如何使用nativequery多表关联查询返回自定义实体类

    JPA如何使用nativequery多表关联查询返回自定义实体类

    这篇文章主要介绍了JPA如何使用nativequery多表关联查询返回自定义实体类,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11

最新评论