- 添加依赖
<dependency>
<groupId>com.github.tobato</groupId>
<artifactId>fastdfs-client</artifactId>
<version>1.26.1-RELEASE</version>
</dependency>
- 添加配置类
import com.github.tobato.fastdfs.FdfsClientConfig;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableMBeanExport;
import org.springframework.context.annotation.Import;
import org.springframework.jmx.support.RegistrationPolicy;
@Configuration
@Import(FdfsClientConfig.class)
/**
* 解决jmx重复注册bean的问题
*/
@EnableMBeanExport(registration = RegistrationPolicy.IGNORE_EXISTING)
public class ComponetImport {
}
- 配置文件
#配置FastDFS
fdfs.connect-timeout=1501
#tracker地址
fdfs.tracker-list=129.204.43.160:22122
- 文件上传
import com.github.tobato.fastdfs.domain.StorePath;
import com.github.tobato.fastdfs.service.FastFileStorageClient;
import org.apache.commons.io.FilenameUtils;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import java.io.IOException;
@Service
/**
* @author 孟祥龙
*/
public class FileUploadService {
@Resource
FastFileStorageClient fastFileStorageClient; // 自动注入一个fastdfs客户端
/**
* 文件上传
* @param file MultipartFile对象(用户上传的文件对象)
* @return 成功:图片路径id 失败:error
*/
public String upload(MultipartFile file){
StorePath path = null;
try {
path = (StorePath) fastFileStorageClient.uploadFile(file.getInputStream(),file.getSize(), FilenameUtils.getExtension(file.getOriginalFilename()),null);
} catch (IOException e) {
e.printStackTrace();
return "error";
}
return path.getFullPath();
}
}
完整功能:https://blog.csdn.net/u013792404/article/details/90546809
github:https://github.com/tobato/FastDFS_Client