FastDFS安裝(http://blog.csdn.net/LoveCarpenter/article/details/75913329)web
tracker_server=192.168.36.20:22122
package FastDFS; import org.csource.fastdfs.ClientGlobal; import org.csource.fastdfs.StorageClient; import org.csource.fastdfs.StorageServer; import org.csource.fastdfs.TrackerClient; import org.csource.fastdfs.TrackerServer; import org.junit.Test; /** * * @author: SHF * @date: 2017年12月15日 下午4:21:30 * @Description: 對個人圖片服務器進行測試 */ public class FastDFSTest { /** * 測試圖片服務器是否能使用 */ @Test public void testFastDFS() throws Exception{ //1 建立一個配置文件,文件名任意,內容就是tracker服務器的地址 //2 使用全局對象加載配置文件(暫時使用全文件名) ClientGlobal.init("E:/Eclipse/Graduation-Project/Graduation-Project/Graduation-manager-web/src/main/resources/FastDFS/fastdfsServer.conf"); //3 建立TrackerClient對象 TrackerClient trackerClient=new TrackerClient(); //4 經過TrakcerClient對象來得到一個trackerServier對像 TrackerServer trackerServer=trackerClient.getConnection(); //5 建立一個StorageServier的引用,能夠是null StorageServer storageServer=null; //6 建立一個StorageClient,參數使用TrackerServer和StrorageServer StorageClient storageClient=new StorageClient(trackerServer, storageServer); //7 使用StorageClient上傳文件. String [] str=storageClient.upload_file("C:/Users/Public/Pictures/Sample Pictures/Chrysanthemum.jpg", "jpg", null); for(String string_name:str){ System.out.println(string_name); } } }
package com.shi.util; import org.csource.common.NameValuePair; import org.csource.fastdfs.ClientGlobal; import org.csource.fastdfs.StorageClient1; import org.csource.fastdfs.StorageServer; import org.csource.fastdfs.TrackerClient; import org.csource.fastdfs.TrackerServer; public class FastDFSClient { private TrackerClient trackerClient = null; private TrackerServer trackerServer = null; private StorageServer storageServer = null; private StorageClient1 storageClient = null; public FastDFSClient(String conf) throws Exception { if (conf.contains("classpath:")) { conf = conf.replace("classpath:", this.getClass().getResource("/").getPath()); } ClientGlobal.init(conf); trackerClient = new TrackerClient(); trackerServer = trackerClient.getConnection(); storageServer = null; storageClient = new StorageClient1(trackerServer, storageServer); } /** * 上傳文件方法 * <p>Title: uploadFile</p> * <p>Description: </p> * @param fileName 文件全路徑 * @param extName 文件擴展名,不包含(.) * @param metas 文件擴展信息 * @return * @throws Exception */ public String uploadFile(String fileName, String extName, NameValuePair[] metas) throws Exception { String result = storageClient.upload_file1(fileName, extName, metas); return result; } public String uploadFile(String fileName) throws Exception { return uploadFile(fileName, null, null); } public String uploadFile(String fileName, String extName) throws Exception { return uploadFile(fileName, extName, null); } /** * 上傳文件方法 * <p>Title: uploadFile</p> * <p>Description: </p> * @param fileContent 文件的內容,字節數組 * @param extName 文件擴展名 * @param metas 文件擴展信息 * @return * @throws Exception */ public String uploadFile(byte[] fileContent, String extName, NameValuePair[] metas) throws Exception { String result = storageClient.upload_file1(fileContent, extName, metas); return result; } public String uploadFile(byte[] fileContent) throws Exception { return uploadFile(fileContent, null, null); } public String uploadFile(byte[] fileContent, String extName) throws Exception { return uploadFile(fileContent, extName, null); } }
封裝測試數組
package test; import org.junit.Test; import com.shi.util.FastDFSClient; public class FastDFSClientTest { @Test public void testFastDFSClien(){ try { FastDFSClient fastDFSClient =new FastDFSClient("E:/Eclipse/Graduation-Project/Graduation-Project/Graduation-manager-web/src/main/resources/FastDFS/fastdfsServer.conf"); String name=fastDFSClient.uploadFile("C:/Users/Public/Pictures/Sample Pictures/Chrysanthemum.jpg" ,"jpg"); System.out.println(name); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } }