目录
安装fastdfs
fastdfs
使用java客户端上传本地文件到fastdfs服务器上
pom.xml
<?xml version="1.0" encoding="utf-8"?>
<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.study</groupid>
<artifactid>fastdfs</artifactid>
<version>1.0-snapshot</version>
<!--加入fastdfs的java客户端依赖-->
<dependencies>
<dependency>
<groupid>org.csource</groupid>
<artifactid>fastdfs-client-java</artifactid>
<version>1.27-snapshot</version>
</dependency>
</dependencies>
</project>
fastdfs_conf配置文件
connect_timeout = 2
network_timeout = 30
charset = utf-8
http.tracker_http_port = 8080
http.anti_steal_token = no
http.secret_key = fastdfs1234567890
#tracker_server = 10.0.11.247:22122
#tracker_server = 10.0.11.248:22122
#tracker_server = 10.0.11.249:22122
tracker_server = 192.168.40.128:22122
fastdfs
package com.study.fastdfs;
import org.csource.common.myexception;
import org.csource.fastdfs.*;
import java.io.ioexception;
public class fastdfs {
private static trackerserver trackerserver = null;
private static storageserver storageserver = null;
public static void main(string[] args) throws ioexception, myexception {
getstorageclient();
fileupload();
filedownload();
filedelete();
closefastdfs();
}
//抽取获取storageclient的方法
public static storageclient getstorageclient() throws ioexception, myexception {
//1.加载配置文件,默认去classpath下加载
clientglobal.init("fdfs_client.conf");
//2.创建trackerclient对象
trackerclient trackerclient = new trackerclient();
//3.创建trackerserver对象
trackerserver = trackerclient.getconnection();
//4.创建storageservler对象
storageserver = trackerclient.getstorestorage(trackerserver);
//5.创建storageclient对象,这个对象完成对文件的操作
storageclient storageclient = new storageclient(trackerserver,storageserver);
return storageclient;
}
//抽取关闭资源的方法
public static void closefastdfs() {
if (storageserver != null) {
try {
storageserver.close();
} catch (ioexception e) {
e.printstacktrace();
}
}
if (trackerserver != null) {
try {
trackerserver.close();
} catch (ioexception e) {
e.printstacktrace();
}
}
}
public static void fileupload(){
try {
//1. 获取storageclient对象
storageclient storageclient = getstorageclient();
//2.上传文件 第一个参数:本地文件路径 第二个参数:上传文件的后缀 第三个参数:文件信息
string [] uploadarray = storageclient.upload_file("d:/aa.txt","txt",null);
for (string str:uploadarray) {
system.out.println(str);
}
} catch (ioexception e) {
e.printstacktrace();
} catch (myexception e) {
e.printstacktrace();
} finally {
closefastdfs();
}
}
/**
* group1
* m00/00/00/wkgoggzajp6adzgdaaaag082hae063.txt
*/
//下载文件的方法
public static void filedownload(){
try {
//1. 获取storageclient对象
storageclient storageclient = getstorageclient();
//2.下载文件 返回0表示成功,其它均表示失败
int num = storageclient.download_file("group1",
"m00/00/00/wkgoggzajp6adzgdaaaag082hae063.txt","e:/bb.txt");
system.out.println(num);
} catch (ioexception e) {
e.printstacktrace();
} catch (myexception e) {
e.printstacktrace();
} finally {
closefastdfs();
}
}
//删除文件的方法
public static void filedelete(){
try {
//1. 获取storageclient对象
storageclient storageclient = getstorageclient();
//2.删除文件 返回0表示成功,其它均表示失败
int num = storageclient.delete_file("group1",
"m00/00/00/wkgoggzajp6adzgdaaaag082hae063.txt");
system.out.println(num);
} catch (ioexception e) {
e.printstacktrace();
} catch (myexception e) {
e.printstacktrace();
} finally {
closefastdfs();
}
}
}
测试
结果:
发表评论