文件传输的便捷组件X File Storage初学心得

文件传输的便捷组件X File Storage初学心得

1.基本使用

x file storage 的基本使用非常便捷。在开发者不需要更多的功能的情况下,只需要在引入架包之后,基于自身文件上传的需求配置一个controller,编写好配置文件就完成了。它的内部已经实现了fileStorageService,只需要在启动类上加入注解就会自动配置,然后就可以调用具体的方法处理相关的问题。具体的使用方法可以去看一下X File Storage的官方文档

2.应用场景

我在使用的过程中是将它作为整个系统的一个文件处理模块来使用的,同时在其他需要处理文件的服务中为它编写了远程调用的接口,让它不仅仅能完成外部系统的调用还能适配内部系统的文件处理

3.几个注意的点

1)文件适配器

在x file storage 的使用过程中如果没有配置文件适配器的话,它只有文件上传的功能

2)@RequestParam/@RequestPart以及consumes

我的使用场景是作为一个系统的模块来使用的,那么我在使用openFeign的时候就需要表明请求为文件传输请求,这时候就需要用到@requestMapping中的一个属性叫consumes.这个属性是用来标注请求头在content-type的类型,文件上传的类型为multipart/form-data,可以使用MediaType这个枚举来设置或者花括号手写也行。同时,得注意在参数列表中文件接收要使用@RequestParam或者@RequestPart标注。

3)写client

写client的时候要注意,openfeign的连接是基于http请求的。尽管想x file storage支持request的形式接收文件,但是当我们编写一个参数为request的client的时候,request会作为参数封装到client的请求。client的具体实现还要先解析请求,然后在请求中解析request的json,然后再转request,很多余。任何方法,如果不是直接请求建议不要以request为参数,如果进行了二次封装解析麻烦,还显得多余。另外一点,在spring中文件的传输会默认使用mutipartFile,所以直接使用mutipartFile放在参数列表中就可以了,其他情况视要求而定。基于这点,fileStorageService允许file作为参数,如果直接在controller中使用以file为参数永远也用不上。而且,file是一个io类,它是标注了目标文件的路径及一些属性,不是真正的文件本身。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值