fastdfs java客户端 下载_FastDFS java客户端文件上传demo
FastDFS不多讲,直接上java调用代码,以下代码是一个spring mvc中一个完整的上传请求,请参阅
@RequestMapping(value = "/upload", method = RequestMethod.POST)
@ResponseBody
public Object upload(@RequestParam MultipartFile file) {
UploadResponse res = new UploadResponse();
try {
if(file.isEmpty()){
res.setRet_code(UserCodeEnum.ERR_FILE_NULL.getCode());
res.setRet_msg(UserCodeEnum.ERR_FILE_NULL.getDesc());
}else{
logger.info("UserController-upload-request-file=" + file.getOriginalFilename());
String tempFileName = file.getOriginalFilename();
//fastDFS方式
ClassPathResource cpr = new ClassPathResource("fdfs_client.conf");
ClientGlobal.init(cpr.getClassLoader().getResource("fdfs_client.conf").getPath());
byte[] fileBuff = file.getBytes();
String fileId = "";
String fileExtName = tempFileName.substring(tempFileName.lastIndexOf("."));
//建立连接
TrackerClient tracker = new TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer = null;
StorageClient1 client = new StorageClient1(trackerServer, storageServer);
//设置元信息
NameValuePair[] metaList = new NameValuePair[3];
metaList[0] = new NameValuePair("fileName", tempFileName);
metaList[1] = new NameValuePair("fileExtName", fileExtName);
metaList[2] = new NameValuePair("fileLength", String.valueOf(file.getSize()));
//上传文件
fileId = client.upload_file1(fileBuff, fileExtName, metaList);
res.setHead_img(UserConstants.FILE_IMG_URL+fileId);
res.setRet_code(UserCodeEnum.SUCCESS.getCode());
res.setRet_msg(UserCodeEnum.SUCCESS.getDesc());
}
logger.info("UserController-upload-response-" + JsonUtils.o2j(res));
} catch (Exception e) {
res.setRet_code(UserCodeEnum.ERR_UNKNOWN.getCode());
res.setRet_msg(UserCodeEnum.ERR_UNKNOWN.getDesc());
logger.error("UserController-upload-error", e);
}
return res;
}
fileId是fastDFS返回的文件路径,fastDFS是可以使用自带的web服务访问文件,也可以集成第三方例如nginx。
fastDFS java客户端配置文件fdfs_client.conf配置如下:
connect_timeout = 30
network_timeout = 60
charset = ISO8859-1
http.tracker_http_port = 8090
http.anti_steal_token = no
http.secret_key = 123456
tracker_server = 192.168.11.***:22122
至此完成,通过网页简单测试即可,注意表单名称应与接口一直,命名为file
fastdfs java客户端 下载_FastDFS java客户端文件上传demo相关推荐
- java 中传输文件的代码_java文件上传Demo(必看篇)
说到文件上传我们要做到: 1.引入两个包:commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar 2.将form改为上传文件模式:enctype=" ...
- 【Java编程系列】Minio实现文件上传下载
热门系列: [Java编程系列]Amazon S3实现文件上传下载 目录 热门系列: 1.前言 2.Minio实战代码 2.1 Minio环境部署 2.2 Minio的Sdk对接实现 2.2.1 Mi ...
- HDFS中JAVA API的使用(hadoop的文件上传和下载)
HDFS是一个分布式文件系统,既然是文件系统,就可以对其文件进行操作,比如说新建文件.删除文件.读取文件内容等操作.下面记录一下使用JAVA API对HDFS中的文件进行操作的过程. 对分HDFS中的 ...
- Java Web项目中遇到的文件上传与下载问题
(转发自:https://www.cnblogs.com/xdp-gacl/p/4200090.html) 在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中 ...
- 对象存储Minio 客户端工具类,实现文件上传、图像压缩、图像添加水印
在搭建好了MInio分布式对象存储集群后,官方提供了MInio Client 各类语言的SDK,但是无法直接使用需要进一步封装,这里将JAVA 版的的SDK结合自身业务做个简单封装. Minio 中文 ...
- Apache HttpClient 客户端使用详解、文件上传、文件下载
目录 HttpClient 概述与下载 Http Get 请求(文件下载) Http POST 请求(文件上传) Http Put 请求 Http Delete 请求 异步执行请求 HttpClien ...
- java 文件上传 demo_java文件上传Demo
说到文件上传我们要做到: 1.引入两个包:commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar 2.将form改为上传文件模式:enctype=" ...
- 【java笔记】网络编程:文件上传案例
原理:文件的复制 客户端读取本地的文件,把文件上传到服务器,服务器把上传的文件保存到服务器的硬盘上 步骤: 1.客户端使用本地的字节输入流,读取要上传的文件 2.客户端使用网路字节输出流,把读取的文件 ...
- java fileupload 进度_SpringBoot+fileUpload获取文件上传进度
我本人在网上找了很多关于文件上传进度获取的文章,普遍基于spring MVC 框架通过 fileUpload 实现,对于spring Boot 通过 fileUpload 实现的帖子非常少,由于小弟学 ...
- dropzone java实例_Java实现拖拽文件上传dropzone.js的简单使用示例代码
Java实习生一枚,前端知识薄弱,最近因为工作需要,做了一个拖拽文件上传的功能,发现dropzone.js挺不错的,特地做个笔记. 自己写的拖拽文件至一个按钮上传的功能,前端及java代码如下: js ...
最新文章
- 企业微信发送企业红包java_发放企业红包
- idea 如何看bytecode_IDEA字节码学习查看神器介绍
- 用shell编写的贪吃蛇游戏
- UA SIE545 优化理论基础0 优化建模7 二值变量的应用
- Docker Storm开发环境搭建
- matlab极大无关组,matlab最大无关组
- 【16】成对使用new和delete时要采取相同形式
- 【工大SCIR笔记】事实感知的生成式文本摘要
- Spring Boot 项目优化和Jvm调优 (楼主亲测,真实有效)
- 拓端tecdat|R语言自然语言处理(NLP):情感分析新闻文本数据
- LFSR:线性反馈移位寄存器及其应用
- WIN10添加策略组
- 基于单片机指纹考勤系统设计(论文毕设)全套资料
- 想成为CSS大师,你倒是学啊 -30个资源大推荐
- 本科生如何入门GNSS算法(二)- rtklib定位解算过程中的GNSS数据格式以及基本概念
- Android开发的参考书籍和参考网站
- ps命令,top命令,pstree命令,缓存和缓冲的区别
- linux操作系统基础北京邮电大学出版社,Linux操作系统与实训教程
- Anaconda or Miniconda windows下 cmd命令行模式创建、激活、关闭、删除虚拟环境方法步骤
- html表格不能横向自动展示,html table表格列数太多添加横向滚动条