当前位置: 首页 > news >正文

廊坊企业网站服务珠海左右创意园网站开发

廊坊企业网站服务,珠海左右创意园网站开发,小程序公司排名前十,国内三大oa系统在Spring Cloud封装的Feign中并不直接支持传文件#xff0c;但可以通过引入Feign的扩展包来实现#xff0c;本来就来具体说说如何实现。 服务提供方#xff08;接收文件#xff09; 服务提供方的实现比较简单#xff0c;就按Spring MVC的正常实现方式即可#xff0c;比…在Spring Cloud封装的Feign中并不直接支持传文件但可以通过引入Feign的扩展包来实现本来就来具体说说如何实现。 服务提供方接收文件 服务提供方的实现比较简单就按Spring MVC的正常实现方式即可比如 EnableFeignClientsEnableDiscoveryClientSpringBootApplicationpublic class Application { RestController public class UploadController { PostMapping(value /uploadFile, consumes MediaType.MULTIPART_FORM_DATA_VALUE) public String handleFileUpload(RequestPart(value file) MultipartFile file) { return file.getName(); } } public static void main(String[] args) { new SpringApplicationBuilder(Application.class).web(true).run(args); }}服务消费方发送文件 在服务消费方由于会使用Feign客户端所以在这里需要在引入feign对表单提交的依赖具体如下 dependency groupIdio.github.openfeign.form/groupId artifactIdfeign-form/artifactId version3.0.3/version/dependencydependency groupIdio.github.openfeign.form/groupId artifactIdfeign-form-spring/artifactId version3.0.3/version/dependencydependency groupIdcommons-fileupload/groupId artifactIdcommons-fileupload/artifactId version1.3.3/version/dependency定义文件上传方的应用主类和FeignClient假设服务提供方的服务名为eureka-feign-upload-server EnableFeignClientsEnableDiscoveryClientSpringBootApplicationpublic class Application { public static void main(String[] args) { new SpringApplicationBuilder(Application.class).web(true).run(args); }}FeignClient(value upload-server, configuration UploadService.MultipartSupportConfig.class)public interface UploadService { PostMapping(value /uploadFile, consumes MediaType.MULTIPART_FORM_DATA_VALUE) String handleFileUpload(RequestPart(value file) MultipartFile file); Configuration class MultipartSupportConfig { Bean public Encoder feignFormEncoder() { return new SpringFormEncoder(); } } }在启动了服务提供方之后尝试在服务消费方编写测试用例来通过上面定义的Feign客户端来传文件比如 Slf4jRunWith(SpringJUnit4ClassRunner.class)SpringBootTestpublic class UploadTester { Autowired private UploadService uploadService; Test SneakyThrows public void testHandleFileUpload() { File file new File(upload.txt); DiskFileItem fileItem (DiskFileItem) new DiskFileItemFactory().createItem(file, MediaType.TEXT_PLAIN_VALUE, true, file.getName()); try (InputStream input new FileInputStream(file); OutputStream os fileItem.getOutputStream()) { IOUtils.copy(input, os); } catch (Exception e) { throw new IllegalArgumentException(Invalid file: e, e); } MultipartFile multi new CommonsMultipartFile(fileItem); log.info(uploadService.handleFileUpload(multi)); }}完整示例 读者可以根据喜好选择下面的两个仓库中查看eureka-feign-upload-server和eureka-feign-upload-client两个项目 Githubhttps://github.com/dyc87112/SpringCloud-Learning/Giteehttps://gitee.com/didispace/SpringCloud-Learning/ 如果您对这些感兴趣欢迎star、follow、收藏、转发给予支持
http://www.pierceye.com/news/863924/

相关文章:

  • 建设网站的法律可行性分析快手自媒体平台
  • 网站建设的内容规划网站空间 阿里云
  • 网站建设横幅wordpress论坛怎么用
  • 做金融网站违法吗喜迎二十大演讲稿
  • 010-58813333 可信网站做网站的流程是怎么样的
  • 凉山州住房和城乡建设局门户网站南昌seo招聘
  • 恒华大厦做网站公司学校网站制作素材
  • 网站上的动图都怎么做的伊犁州新源县地图高清版
  • 音乐网站设计规划书wordpress爬取文章插件
  • 长沙哪家制作网站好医院网站建设方案需要多少钱
  • 建网站 xyz企业网站wordpress
  • 网站建站工作室做网站收录
  • 广州市天河区工程建设监督网站网站维护的注意事项
  • 人才网站建站织梦网站模块
  • 网站区分治疗早射最有效的方法是什么
  • 市体育局网站 两学一做ip详细地址查询工具
  • 网站找图片做海报侵权开发一个oa系统多少钱
  • 网站下载链接打不开外国网站建站
  • 与众不同的网站风控网站开发
  • 哈尔滨的网站设计门户网站建设招投标
  • 如何用wordpress制作网站运城公司做网站
  • 园林景观网站模板做企业商城网站
  • 医疗网站优化怎么做农村自建房设计图效果图
  • 网站建哪家好佛山seo网站排名
  • 做珠宝网站价格多少html5手机网站开发经验
  • dede网站后台合肥网站建设行情
  • 做动漫网站侵权吗途牛网网站建设评价
  • 域名到期对网站的影响做美缝在哪个网站接单
  • 网站建设技术网站刚做网站和搜出来的不一样
  • 营销型网站建设集装箱液袋如何做做网站