SpringBoot整合FastDFS

  • 添加依赖
        
            com.github.tobato
            fastdfs-client
            1.26.1-RELEASE
        
  • 添加配置类
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

你可能感兴趣的:(Java高级框架,Java互联网架构)