概述
添加依赖:
<dependency> <groupId>cn.bestwu</groupId> <artifactId>fastdfs-client-java</artifactId> <version>1.27</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency>
第一个依赖是主体内容,后面两个依赖是代码中后面会用到的一些工具包。
配置文件:
使用API操作连接FastDFS时需要加载一个配置文件,文件后缀名必须为.conf,例如:fdfs.conf 配置文件在resource目录下的任何位置创建。
配置文件内容:
#配置连接超时 connect_timeout=10 #网络工作的超时时间,一次连接的超时时长 network_timeout=30 #连接中的使用字符集,在连接中会传递各种各样的字节信息, #字节信息如果需要转换为字符,那需要一个字符集进行解码编码的过程 charset=UTF-8 #tracker的http协议端口, #和FastDFS的tracker服务器的配置文件tracker.conf中的http.server.port一致 http.tracker_http_port=8080 #tracker服务器所在地址 tracker_server=192.168.8.6:22122
5个配置项。
创建一个类连接FastDFS:
public class TestInitClient{ public static void main(String[] args){ try{ //加载配置文件 ClientGlobal.init("src/main/java/resources/test/fdfs.conf"); //tracker客户端对象 TrackerClient trackerClient=new TrackerClient(); //tracker服务端对象 TrackerServer trackerServer=trackerClient.getConnection(); //storage服务端对象 StorageServer storageServer=trackerClient.getStoreStorage(trackerServer); //最终需要的对象,即storage客户端对象 StorageClient storageClient=new StorageClient(trackerServer,storageServer); System.out.println("storageClient:"+storageClient); }catch(IOException e){ e.printStackTrace(); }catch(MyException e){ e.printStackTrace(); } } }
【手写版】
public class TestInitClient { public static void main(String[] args) { //创建FastDFS Java客户端 //加载客户端配置文件,就是刚定义的conf配置文件 try{ ClientGlobal.init("src/main/resources/test/fdfs.conf"); //创建Tracker服务器的客户端连接对象,无参构造其中默认会调用一个有参构造 //new TrackerClient(TrackerGlobal.g_tracker_group),绑定tracker服务器的ip和端号 TrackerClient trackerClient=new TrackerClient(); //通过Tracker客户端对象获取Tracker服务端对象 TrackerServer trackerServer=trackerClient.getConnection(); //通过tracker客户端和服务端对象获取storage服务端对象 StorageServer storageServer=trackerClient.getStoreStorage(trackerServer); //通过tracker服务端对象和storage服务端对象实现文件上传下载 //最终使用的对象 StorageClient storageClient=new StorageClient(trackerServer,storageServer); System.out.println("storageClient :"+storageClient); }catch(IOException e){//配置文件找不到之类的 e.printStackTrace(); }catch (MyException e){//FastDFS的java客户端API自定义的异常 //如tracker服务器连接错误,或者storage服务器连接错误 } } }
【复制版】
使用properties配置文(不喜欢conf配置文件的可以看看):fdfs.properties
#连接超时 fastdfs.connect_timeout_in_seconds=10 #网络超时 fastdfs.network_timeout_in_seconds=30 #连接的字符集 fastdfs.charset=UTF-8 #tracker服务器中配置文件中的http端口配置 fastdfs.http_tracker_http_port=8080 #tracker服务器ip和端口(servers不是server) fastdfs.tracker_servers=192.168.8.6:22122
通过properties配置文件来创建客户端连接:
public class TestInitClientByProperties { public static void main(String[] args) { //加载配置文件 Properties properties=new Properties(); try { properties.load(TestInitClientByProperties.class.getClassLoader().getResourceAsStream("test/fdfs.properties")); } catch (IOException e) { e.printStackTrace(); System.out.println("properties配置文件加载错误"); return; } //通过ClientGlobal加载配置内容 try { ClientGlobal.initByProperties(properties); TrackerClient trackerClient=new TrackerClient(); TrackerServer trackerServer=trackerClient.getConnection(); StorageServer storageServer=trackerClient.getStoreStorage(trackerServer); StorageClient storageClient=new StorageClient(trackerServer,storageServer); System.out.println("storageClient: "+storageClient); } catch (IOException e) { e.printStackTrace(); } catch (MyException e) { e.printStackTrace(); } } }
最后
以上就是沉静钻石为你收集整理的FastDFS(JavaAPI访问)的全部内容,希望文章能够帮你解决FastDFS(JavaAPI访问)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复