搭建环境
这里我们使用javaApi测试文件的上传,java版本的fastdfs-client地址在: https:///happyfish100/fastdfs-client-java,参考此工程编写测试用例。
1)创建maven工程
pom.xml
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐parent</artifactId> <version>1.5.9.RELEASE</version> </parent> <groupId>com.xuecheng</groupId> <artifactId>test‐fastDSF</artifactId> <version>1.0‐SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐web</artifactId> </dependency> <!‐‐ ‐client‐java ‐‐> <dependency> <groupId>net.oschina.zcx7878</groupId> <artifactId>fastdfs‐client‐java</artifactId> <version>1.27.0.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring‐boot‐starter‐test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons‐io</artifactId> <version>1.3.2</version> </dependency> </dependencies> </parent>2) 配置 文件
在classpath:config下创建fastdfs-client.properties文件
fastdfs.connect_timeout_in_seconds = 5 #http连接超时时间 fastdfs.network_timeout_in_seconds = 30 #tracker与storage网络通信超时时间 fastdfs.charset = UTF‐8 #字符编码 fastdfs.tracker_servers = 192.168.101.64:22122 #tracker服务器地址,多个地址中间用英文逗号分隔文件上传
//上传文件 @Test public void testUpload() { try { ClientGlobal.initByProperties("config/fastdfs‐client.properties"); System.out.println("network_timeout=" + ClientGlobal.g_network_timeout + "ms"); System.out.println("charset=" + ClientGlobal.g_charset); //创建客户端 TrackerClient tc = new TrackerClient(); //连接tracker Server TrackerServer ts = tc.getConnection(); if (ts == null) { System.out.println("getConnection return null"); return; } //获取一个storage server StorageServer ss = tc.getStoreStorage(ts); if (ss == null) { System.out.println("getStoreStorage return null"); } //创建一个storage存储客户端 StorageClient1 sc1 = new StorageClient1(ts, ss); NameValuePair[] meta_list = null; //new NameValuePair[0]; String item = "C:\\Users\\admin\\Desktop\\1.png"; String fileid; fileid = sc1.upload_file1(item, "png", meta_list); System.out.println("Upload local file " + item + " ok, fileid=" + fileid); } catch (Exception ex) { ex.printStackTrace(); } }文件查询
//查询文件 @Test public void testQueryFile() throws IOException, MyException { ClientGlobal.initByProperties("config/fastdfs‐client.properties"); TrackerClient tracker = new TrackerClient(); TrackerServer trackerServer = tracker.getConnection(); StorageServer storageServer = null; StorageClient storageClient = new StorageClient(trackerServer,storageServer); FileInfo fileInfo = storageClient.query_file_info("group1","M00/00/01/wKhlQFrKBSOAW5AWAALcAg10vf4862.png"); System.out.println(fileInfo); }文件下载
//下载文件 @Test public void testDownloadFile() throws IOException, MyException { ClientGlobal.initByProperties("config/fastdfs‐client.properties"); TrackerClient tracker = new TrackerClient(); TrackerServer trackerServer = tracker.getConnection(); StorageServer storageServer = null; StorageClient1 storageClient1 = new StorageClient1(trackerServer, storageServer); byte[] result = storageClient1.download_file1("group1/M00/00/01/wKhlQFrKBSOAW5AWAALcAg10vf4862.png"); File file = new File("d:/1.png"); FileOutputStream fileOutputStream = new FileOutputStream(file); fileOutputStream.write(result); fileOutputStream.close(); }
fastDFS分布式文件系统--文件上传/下载/查询完整代码实现
原创
©著作权归作者所有:来自51CTO博客作者a772304419的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:Jpa规范原始编程步骤
下一篇:FastDFS文件上传和下载流程
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
分布式:搭建FastDFS分布式文件系统
分布式篇 - 搭建FastDFS分布式文件系统 & 结合Nginx实现访问服务环境准备两台CentOS7.x虚拟机:192.168.1.102
nginx 分布式 kubernetes php 配置文件 -
分布式文件系统FastDFS详解
分布式文件系统FastDFS快速入门、设计、原理、实践
astDFS 分布式 文件系统 -
【FastDFS】分布式文件系统简介
一、前言 在前一段工作的时间中,小编接触了文件系统——FastDFS,它是一个用C语言编写
c语言 分布式文件系统 fastdfs 文件系统 负载均衡 -
Android实现类似execel的表格能回显并能修改表格内容(附带源码)
Android实现类似execel的表格能回显并能修改表格内容(附带源码)
#android android Text 数据


















