FatsDFS安装配置内容:
组名: group_name=group1
端口:port:23000
向tracker心跳间隔:heart_beat-interval=30
storage基础目录:base_path=/home/fastdfs
磁盘存储目录(可以配置多个):store_path0=/home/fastdfs/fdfs_storge
store_path1=......
上报tracker地址(可以配置多个):tracker_server=192.168.11.11:11111
tracker_server=192.168.11.11:11112
1.引入依赖
<!-- https://mvnrepository.com/artifact/net.oschina.zcx7878/fastdfs-client-java -->
<dependency>
<groupId>net.oschina.zcx7878</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.27.0.0</version>
</dependency>
2.编写配置文件:fastdfs-client.properties
fastdfs.connect_timeout_in_seconds = 5 #http连接超时时间
fastdfs.network_timeout_in_seconds = 30 #tracker与storage网络通信超时时间
fastdfs.charset = utf-8 #字符编码
fastdfs.tracker_servers = 192.168.11.11:22222,192.168.11.11:22223 #tracker服务器地址
spring文件上传配置:
spring:
servlet:
multipart:
enable: true
file-size-threshold:0#支持文件写入磁盘
location: #上传文件临时目录
max-file-size: 1MB
max-request-size: 30MB
3.编码
private String upload() throws IOException, MyException {
ClientGlobal.initByProperties("config/fastdfs.prperties");
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storgeServer = trackerClient.getStoreStorage(trackerServer);
StorageClient1 storageClient = new StorageClient1(trackerServer,storgeServer);
String fileId = storageClient.upload_file1("文件路径", "png", null);
// storageClient.query_file_info1(fileId) 查询
return fileId;
}
private void download() throws IOException, MyException {
ClientGlobal.initByProperties("config/fastdfs.prperties");
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storgeServer = trackerClient.getStoreStorage(trackerServer);
StorageClient1 storageClient = new StorageClient1(trackerServer,storgeServer);
byte[] content = storageClient.download_file1("fileId");
}