美文网首页
FastDFS中的知识

FastDFS中的知识

作者: Mango_yes | 来源:发表于2017-06-09 20:48 被阅读0次

    fastdfs-client-java的引入

    抽取文件上传的工具类,(一个客户端追踪器,一个服务器追踪器,一个storage来连接客户端和服务器。给文件的名称和拓展名就能让客户端将文件上传到服务器,)

    实现过程:初始化一个客户端追踪器,一个服务器追踪器,一个storage来连接客户端和服务器。通过加载fastfds.properties中服务器ip地址和端口号,从而通过storage来建立客户端和服务器的连接。将其上传。

    public class FastDFSUtils(){

          private static TrackerClient= null;

          private static TrackerServer trackerServer = null;

          private static StorageClient storageClient = null;

    private static init( String conf){

            if(conf.contains("classpath:")){

                   conf = conf.replace("classpath:",FastDFSUtils.getResource("/").getPath);

    //conf 是要加载的属性文件的地址。

                    ClientGlobal.init(conf); } //加载配置文件

           trackerClient = new TrackerClient();

           trackerServer = trackerClient.getConnection();

           storageClient = new StorageClient1(trackerServer,null);

            }

    }

    //方法一:上传需要的是文件的路径全名称和文件的拓展名。方法二:上传需要的是文件file.getByte和文件的拓展名(客户端上传不需要再截取成一段一段),上传不同的文件的绝对路径是不相同的,就用

    public static void upload(String fileName,String extName){

            return storageClient.upload_file1(fileName, extName, null);

    }

    //方法的重载

    public static void upload(byte[ ] bs, String extName){

            return storageClient.upload_file1(bs, extName, null);

    }

    }

    我们将文件上传到服务器,需要建立与服务器的连接,就是需要知道这台服务器的ip地址和端口号,在fastdfs-client-java中用ClientGlobal来加载属性文件,建立与服务器的连接,所以conf(属性文件的绝对路径全名称)=classpath(变量)+“/properties/fastdfs.properties”.因此,实际上是属性文件所在的绝对路径地址就是classpath+“/properties/fastdfs.properties”.  而真正    FastDFSUtils.getResource("/").getPath获得的是真正部署到tomcat上的路径,即是controller的下的target的绝对路径如:D:\javaEE\MyMaven\zhanghui.background\zhanghui-background-controller\target\classes (真正部署到tomcat上的路径)    +\properties.fastdfs.properties

    相关文章

      网友评论

          本文标题:FastDFS中的知识

          本文链接:https://www.haomeiwen.com/subject/xhbfqxtx.html