zoukankan      html  css  js  c++  java
  • FastDFSClient工具类


    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);
    }
    }
    public class FastDFSTest {

    @Test
    public void testFileUpload() throws Exception {
    // 1、加载配置文件,配置文件中的内容就是tracker服务的地址。
    ClientGlobal.init("D:/workspaces-itcast/term197/taotao-manager-web/src/main/resources/resource/client.conf");
    // 2、创建一个TrackerClient对象。直接new一个。
    TrackerClient trackerClient = new TrackerClient();
    // 3、使用TrackerClient对象创建连接,获得一个TrackerServer对象。
    TrackerServer trackerServer = trackerClient.getConnection();
    // 4、创建一个StorageServer的引用,值为null
    StorageServer storageServer = null;
    // 5、创建一个StorageClient对象,需要两个参数TrackerServer对象、StorageServer的引用
    StorageClient storageClient = new StorageClient(trackerServer, storageServer);
    // 6、使用StorageClient对象上传图片。
    //扩展名不带“.”
    String[] strings = storageClient.upload_file("D:/Documents/Pictures/images/200811281555127886.jpg", "jpg", null);
    // 7、返回数组。包含组名和图片的路径。
    for (String string : strings) {
    System.out.println(string);
    }
    }
    }

  • 相关阅读:
    vue使用腾讯地图选点组件问题总结
    腾讯位置服务实现点击建筑显示围栏及建筑信息效果
    unity使用UMP播放RTSP流,打包exe后显示空白
    uniapp获取context
    Android studio安装debug apk提示“调用者不被允许测试的测试程序”
    unity使用VuplexWebView内嵌浏览器遮挡前方按钮的问题
    unity透明材质上放3dtext不同角度,文字变灰的问题
    Python线程指南
    mysql 简单表和索引
    dubbo 提示 403 unknown user
  • 原文地址:https://www.cnblogs.com/chinaifae/p/10254334.html
Copyright © 2011-2022 走看看