fastdfs-client-java操作fastdfs5.0.4
来源:互联网 发布:淘宝企业店铺开店新规 编辑:程序博客网 时间:2024/06/03 17:27
下载fastdfs-client-java源码添加到项目工程里面,添加配置文件:fdfs_client.conf
这个jar包在中央仓库是没有的,我们可以将源码下载下来,使用maven install安装到本地仓库。
一、在https://github.com/happyfish100/fastdfs-client-java 下载客户端,解压后并执行ant命令,在E:\tools\libs\fastdfs\fastdfs-client-java-master\src\build下会生成fastdfs_client.jar如图示
二、mvn安装fastdfs_client.jar,在cmd中执行命令
mvn install:install-file -DgroupId=org.csource -DartifactId=fastdfs-client-java -Dversion=5.0.4 -Dpackaging=jar -Dfile=D:\fastdfs_client.jar
三、在eclipse中新建maven项目fastdfs-demo,在pom.xml中加入依赖如下
<
project
xmlns
=
"http://maven.apache.org/POM/4.0.0"
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
=
"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
>
<
modelVersion
>4.0.0</
modelVersion
>
<
groupId
>com.leech</
groupId
>
<
artifactId
>fastdfs-demo</
artifactId
>
<
version
>0.0.1-SNAPSHOT</
version
>
<
packaging
>jar</
packaging
>
<
name
>fastdfs-demo</
name
>
<
url
>http://maven.apache.org</
url
>
<
properties
>
<
project.build.sourceEncoding
>UTF-8</
project.build.sourceEncoding
>
</
properties
>
<
dependencies
>
<
dependency
>
<
groupId
>junit</
groupId
>
<
artifactId
>junit</
artifactId
>
<
version
>4.11</
version
>
<
scope
>test</
scope
>
</
dependency
>
<
dependency
>
<
groupId
>org.csource</
groupId
>
<
artifactId
>fastdfs-client-java</
artifactId
>
<
version
>5.0.4</
version
>
</
dependency
>
<
dependency
>
<
groupId
>commons-io</
groupId
>
<
artifactId
>commons-io</
artifactId
>
<
version
>2.4</
version
>
</
dependency
>
</
dependencies
>
</
project
>
在src/main/resources中新建fdfs_client.conf文件,内容如下
connect_timeout = 2
network_timeout = 30
charset = UTF-8
http.tracker_http_port = 80
http.anti_steal_token = no
http.secret_key = FastDFS1234567890
tracker_server = 192.168.17.112:22122
#tracker_server = 192.168.0.119:22122
在src/main/java中创建TestFastDfs.java如下
package
com.leech.fastdfs.demo;
import
java.io.FileNotFoundException;
import
java.io.FileOutputStream;
import
java.io.IOException;
import
java.util.UUID;
import
org.apache.commons.io.IOUtils;
import
org.csource.common.MyException;
import
org.csource.common.NameValuePair;
import
org.csource.fastdfs.ClientGlobal;
import
org.csource.fastdfs.FileInfo;
import
org.csource.fastdfs.StorageClient;
import
org.csource.fastdfs.StorageServer;
import
org.csource.fastdfs.TrackerClient;
import
org.csource.fastdfs.TrackerServer;
import
org.junit.After;
import
org.junit.Before;
import
org.junit.Test;
public
class
TestFastDfs {
public
String conf_filename =
"D:\\stsworkspace\\fastdfs-demo\\src\\main\\resources\\fdfs_client.conf"
;
//public String local_filename = "D:\\stsworkspace\\fastdfs-demo\\src\\main\\resources\\fdfs_client.conf";
public
String local_filename =
"D:\\stsworkspace\\fastdfs-demo\\src\\main\\resources\\sprites.png"
;
@Before
public
void
setUp()
throws
Exception {
}
@After
public
void
tearDown()
throws
Exception {
}
@Test
public
void
testUpload() {
try
{
ClientGlobal.init(conf_filename);
TrackerClient tracker =
new
TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer =
null
;
StorageClient storageClient =
new
StorageClient(trackerServer, storageServer);
// NameValuePair nvp = new NameValuePair("age", "18");
NameValuePair nvp [] =
new
NameValuePair[]{
new
NameValuePair(
"age"
,
"18"
),
new
NameValuePair(
"sex"
,
"male"
)
};
String fileIds[] = storageClient.upload_file(local_filename,
"png"
, nvp);
System.out.println(fileIds.length);
System.out.println(
"组名:"
+ fileIds[
0
]);
System.out.println(
"路径: "
+ fileIds[
1
]);
}
catch
(FileNotFoundException e) {
e.printStackTrace();
}
catch
(IOException e) {
e.printStackTrace();
}
catch
(MyException e) {
e.printStackTrace();
}
}
@Test
public
void
testDownload() {
try
{
ClientGlobal.init(conf_filename);
TrackerClient tracker =
new
TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer =
null
;
StorageClient storageClient =
new
StorageClient(trackerServer, storageServer);
byte
[] b = storageClient.download_file(
"group1"
,
"M00/00/00/wKgRcFV_08OAK_KCAAAA5fm_sy874.conf"
);
System.out.println(b);
IOUtils.write(b,
new
FileOutputStream(
"D:/"
+UUID.randomUUID().toString()+
".conf"
));
}
catch
(Exception e) {
e.printStackTrace();
}
}
@Test
public
void
testGetFileInfo(){
try
{
ClientGlobal.init(conf_filename);
TrackerClient tracker =
new
TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer =
null
;
StorageClient storageClient =
new
StorageClient(trackerServer, storageServer);
FileInfo fi = storageClient.get_file_info(
"group1"
,
"M00/00/00/wKgRcFV_08OAK_KCAAAA5fm_sy874.conf"
);
System.out.println(fi.getSourceIpAddr());
System.out.println(fi.getFileSize());
System.out.println(fi.getCreateTimestamp());
System.out.println(fi.getCrc32());
}
catch
(Exception e) {
e.printStackTrace();
}
}
@Test
public
void
testGetFileMate(){
try
{
ClientGlobal.init(conf_filename);
TrackerClient tracker =
new
TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer =
null
;
StorageClient storageClient =
new
StorageClient(trackerServer,
storageServer);
NameValuePair nvps [] = storageClient.get_metadata(
"group1"
,
"M00/00/00/wKgRcFV_08OAK_KCAAAA5fm_sy874.conf"
);
for
(NameValuePair nvp : nvps){
System.out.println(nvp.getName() +
":"
+ nvp.getValue());
}
}
catch
(Exception e) {
e.printStackTrace();
}
}
@Test
public
void
testDelete(){
try
{
ClientGlobal.init(conf_filename);
TrackerClient tracker =
new
TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer =
null
;
StorageClient storageClient =
new
StorageClient(trackerServer,
storageServer);
int
i = storageClient.delete_file(
"group1"
,
"M00/00/00/wKgRcFV_08OAK_KCAAAA5fm_sy874.conf"
);
System.out.println( i==
0
?
"删除成功"
:
"删除失败:"
+i);
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
执行testUpload方法如下
在浏览器输入http://192.168.17.112/group1/M00/00/00/wKgRcFV_7W6Aa56BAAInmQ3ZUtg584.png 如下
- fastdfs-client-java操作fastdfs5.0.4
- fastdfs-client-java操作fastdfs5.0.4
- fastdfs-client-java操作fastdfs5.0.5
- fastdfs-java-client 使用指南
- fastdfs-java-client 使用指南
- fastdfs-client-java maven
- Java利用fastdfs-client-java开发工具包操作FastDFS分布式文件系统
- FastDFS、Nginx安装、配置、测试(java client)
- fastdfs-client-java工具类的使用
- java客户端操作fastdfs集群
- fastdfs分布式文件系统之JAVA client工具类封装
- SpringMVC整合fastdfs-client-java实现web文件上传下载
- SpringMVC整合fastdfs-client-java实现web文件上传下载
- fastdfs分布式文件系统之JAVA client工具类封装
- SpringMVC整合fastdfs-client-java实现web文件上传下载
- hbase java client 操作
- 关于使用fastdfs-client-java链接fastDFS(外网访问)超时问题
- Nodejs Client for FastDFS
- 微信浏览器与企业微信浏览器user agent比较
- 工作中的总结(1)【框架、插件、跨域、Ajax、时间、模板下载、页面打印、图片上传】
- 下载公众号文章中的图片,php开发公众号应用
- 给定不同数字的集合,返回所有可能的排列。
- 利用开源工具TempestSDR实现屏显内容远程窃取
- fastdfs-client-java操作fastdfs5.0.4
- git基本命令学习(一)
- 数据结构实验之串一:KMP简单应用
- 在全局下存全局变量注意点
- Python数据分析实战 | 数据挖掘人门
- 数据结构实验之串三:KMP应用
- js点击下载跳转iOS或安卓
- VMWare 复制虚拟机系统后,模块“Disk”启动失败
- iPhoneX的faceID到底是一种怎样风骚的操作?