一、jar 包
jar包下载:https://pan.baidu.com/s/1nwkAHU5 密码:tlv6
或者
下载工程,安装到 maven 本地仓库
工程下载:https://pan.baidu.com/s/1i6SIm3b 密码:jkjt
二、工具类代码
package com.common.fastFDS;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); ???}}
三、测试代码
@Testpublic void testFastFDSClient() throws Exception{ ???//1.创建一个配置文件 client.conf (该文件名任意) ???//配置文件内容:tracker_server=192.168.**.**:22122 (你自己 FastDFS 服务器 ip+端口号) ???????//2.创建 fastDFSClient 实例 ???FastDFSClient fastDFSClient = new FastDFSClient("E:/workspaces/conf/client.conf"); ???????//3.执行图片上传,并返回图片路径 ???String string = fastDFSClient.uploadFile("C:/waiguoren.jpg"); ???System.out.println(string);}
四、
可以借鉴:http://www.cnblogs.com/fangwu/p/8367293.html
FastDFS 工具类实现文件上传_02
原文地址:https://www.cnblogs.com/fangwu/p/8367318.html