java FastDFS文件下载到本地的方法
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,本篇内容介绍了"java FastDFS文件下载到本地的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有
千家信息网最后更新 2025年12月03日java FastDFS文件下载到本地的方法
本篇内容介绍了"java FastDFS文件下载到本地的方法"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
package cn.bywin.cbvsp.controller;import cn.bywin.cbvsp.DAL.BO.po.clickhouse.BaseFrameCh;import cn.bywin.cbvsp.DAL.DAO.clickhouse.ClickHouseBaseDao;import com.github.tobato.fastdfs.domain.proto.storage.DownloadByteArray;import com.github.tobato.fastdfs.service.FastFileStorageClient;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Component;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import javax.imageio.stream.FileImageOutputStream;import java.io.File;import java.util.HashSet;import java.util.List;/** * @author linbin * @create 2019-07-25 15:37 */@RestController@Component@RequestMapping("linbin")public class DownLoadController { @Autowired private ClickHouseBaseDao clickHouseBaseDao; @Autowired private FastFileStorageClient storageClient; @PostMapping("/download") public void test() { //查找这个时间段的所有摄像头 List strings1 = clickHouseBaseDao.selectByTime("select video_source_id from cbvsp.base_fragment where real_time between '2019-07-24 20:00:00' and '2019-07-24 20:10:00'"); HashSet s = new HashSet<>(); strings1.forEach(e->{ s.add(e); }); for (String s1 : s) { List strings = clickHouseBaseDao.selectByTime("select file_id from cbvsp.base_fragment where real_time between '2019-07-24 20:00:00' and '2019-07-24 20:10:00' and video_source_id='"+s1+"';"); buildFolder("/home/deploy/191-20to820-video/"+s1+""); strings.forEach(e -> { if(e.contains("35.26.59.199")){ return; } testHome(e,s1); }); } } public void testHome(String fileUrl,String dir) { String path = fileUrl.substring(32); int i = path.indexOf('/'); int i2 = path.indexOf("/", i + 1); int i3 = path.indexOf("/", i2 + 1); String ss = path.substring(i3 + 1); DownloadByteArray downloadByteArray = new DownloadByteArray(); byte[] bytes = storageClient.downloadFile("group1", path, downloadByteArray); byte2image(bytes, "/home/deploy/191-20to820-video/"+dir+"/" + ss); } //byte数组到图片到硬盘上 public void byte2image(byte[] data, String path) { if (data.length < 3 || path.equals("")) return;//判断输入的byte是否为空 try { FileImageOutputStream imageOutput = new FileImageOutputStream(new File(path));//打开输入流 imageOutput.write(data, 0, data.length);//将byte写入硬盘 imageOutput.close(); System.out.println("Make Picture success,Please find image in " + path); } catch (Exception ex) { System.out.println("Exception: " + ex); ex.printStackTrace(); } } public static String buildFolder(String path) { //读取目录路径 File file = new File(path); //推断是否存在 if (!file.exists() && !file.isDirectory()) { try { System.out.println("目录不存在!"); //生成目录 file.mkdir(); } catch (Exception e) { e.printStackTrace(); } } else { System.out.println("目录存在!"); } return path; }} "java FastDFS文件下载到本地的方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
目录
文件
文件下载
方法
内容
更多
知识
硬盘
输入
实用
学有所成
接下来
困境
图片
实际
情况
摄像头
数组
文章
时间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
青海科技产业互联网
珠海商城软件开发定做
热门的网络安全事件
第五章数据库技术基础尔雅
绝地求生的高级服务器
金山区个性化软件开发产品介绍
如何关联数据库
网络安全服务条款
漳州市中小学生网络安全教育
常用网络安全测试工具
代码连接数据库做登录界面
北京靠谱的电脑服务器回收
上海恭鑫网络技术有限公司
如何更新爱思服务器
网络安全模式下载驱动
为什么选择达梦数据库
网络技术有关的毕业论文
健全网络安全制度机制
张玉梅网络安全教育线上讲座
软件开发在建工程核算
渭南软件开发网上价格
安徽使用软件开发要多少钱
软件开发 各阶段任务
网络安全手绘手抄报模板
网络安全论文的检索文献摘录
服务器对公司的危害
周村服装软件开发公司
计算机大学网络技术专业
万州打卡软件开发
民企非营利企业软件开发