FastDFS java 上傳下載
-
配置文件 dfs.propertiesjava
## fastdfs-client fastdfs.connect_timeout_in_seconds=5 fastdfs.network_timeout_in_seconds=30 fastdfs.charset=UTF-8 fastdfs.http_anti_steal_token=true fastdfs.http_secret_key=FastDFS1234567890 fastdfs.http_tracker_http_port=80 fastdfs.tracker_servers=file.ljzsg.com:22122
http_secret_key 對應 /etc/fdfs/http.conf 的http.anti_steal.secret_keydom
-
POMspa
<dependency> <groupId>net.oschina.zcx7878</groupId> <artifactId>fastdfs-client-java</artifactId> <version>1.27.0.0</version> </dependency>
-
上傳.net
@Test public void upload() { try { // 初始化全局配置。加載一個配置文件。 ClientGlobal.initByProperties("dfs.properties"); // 建立一個TrackerClient對象。 TrackerClient trackerClient = new TrackerClient(); // 建立一個TrackerServer對象。 TrackerServer trackerServer = trackerClient.getConnection(); // 聲明一個StorageServer對象,null。 StorageServer storageServer = null; // 得到StorageClient對象。 StorageClient storageClient = new StorageClient(trackerServer, storageServer); // 直接調用StorageClient對象方法上傳文件便可。 String[] strings; strings = storageClient.upload_file("D:\\test.jpg", "jpg", null); for (String string : strings) { System.out.println(string); //group1/ //M00/00/00/wKgCx1wHQ-aAYvtmAACxjYqFSkc019.jpg } } catch (Exception e) { e.printStackTrace(); } }
-
下載code
@Test public void download(){ try { // 初始化全局配置。加載一個配置文件 ClientGlobal.initByProperties("dfs.properties"); // 建立一個TrackerClient對象 TrackerClient tracker = new TrackerClient(); // 建立一個TrackerServer對象。 TrackerServer trackerServer = tracker.getConnection(); // 聲明一個StorageServer對象, StorageServer storageServer = null; // 得到StorageClient對象 StorageClient storageClient = new StorageClient(trackerServer, storageServer); byte[] b = storageClient.download_file("group1", "M00/00/00/wKgCx1wHQ-aAYvtmAACxjYqFSkc019.jpg"); System.out.println(b); // 將下載的文件流保存 IOUtils.write(b, new FileOutputStream("D:/"+UUID.randomUUID().toString()+".jpg")); } catch (Exception e) { e.printStackTrace(); } }