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服务器是一个轻量级的文件存储服务,结合Nginx使用,实现集群高可用,但是他的java客户端不是特别好找。本java客户端依赖包,能够完美整合实现FastDFS服务器的连接,上传、下载和删除。 内部附有简单API使用...
fastdfs java客户端案例(集成线程池),test目录为入口
通过java向fastdfs上传文件实例
基于SpringBoot结合分布式文件系统FastDFS实现的文件上传实例demo,可拿来直接嵌入到自己的系统中 文件上传后的路径: group1/M00/00/43/wKgCYVwhkTOAUxZ1AGf8LohRDBw966.jpg 解读: 一、组名:文件上传后所在...
FastDFS客户端配置文件,主要是为了配置FastDFS服务器的ip地址
通过Java来实现fastdfs文件的上传,返回文件存储路径。封装为一个工具类,可以直接使用。
用于fastdfs Java客户端的Spring Boot启动程序。 为什么 通常,我们以fastdfs_client.conf方式使用fastdfs java客户端。 它运行良好,直到我们开始使用spring boot。 配置文件方式不能满足Spring Boot的活动配置...
fastdfs的客户端java代码实例
fastDFS客户端Spring应用,自带连接池 java客户端 中小视频网站开发
FastDFS文件服务器Java客户端.zip
fastdfs轻量级分布式文件存储系统源代码,安装包,python客户端程序,java客户端程序
基于FastDFS分布式文件系统的测试Demo,可以进行FastDFS分布式文件系统部署后的测试
FastDFS 搭建,及其JAVA客户端使用FastDFS 搭建,及其JAVA客户端使用FastDFS 搭建,及其JAVA客户端使用
FastDFS java client SDK FastDFS Java Client API may be copied only under the terms of the BSD license. 使用ant从源码构建 ant clean package 使用maven从源码安装 mvn clean install 使用maven从jar文件安装...
经验一:FastDFS文件下载恢复原始文件名 经验二:从文件的使用技巧
vue-simple-upload大文件上传的demo案例,可与fastdfs、Minio等文件系统实现分片上传
fastdfs客户端单元测试及Java客户端配置文件,项目中需要fastdfs-client依赖
test目录下是自己写的接口,测试通过可使用 接口提供了上传、下载、删除
它的主要功能包括:文件存储、文件同步和文件访问(文件上传和文件下载),它可以解决高容量和负载平衡问题。FastDfs应满足基于照片共享网站和视频共享网站等文件的网站的要求。 FastDfs有两个角色:跟踪器和存储。...