当前位置: 首页 > news >正文

常州网站制作多少钱seo泛目录培训

常州网站制作多少钱,seo泛目录培训,wordpress缩略图没,做存储各种环境信息的网站前言 Java中的InputSteam 是程序从其中读取数据, OutputSteam是程序可以往里面写入数据。 如果我们有在项目中读取数据库的记录, 在转存成Excel文件, 再把文件转存到OSS中。 生成Excel使用的是阿里的EasyExcel 。 他支持Output的方式写出文件内容。 而…

前言

Java中的InputSteam 是程序从其中读取数据, OutputSteam是程序可以往里面写入数据。
如果我们有在项目中读取数据库的记录, 在转存成Excel文件, 再把文件转存到OSS中。

生成Excel使用的是阿里的EasyExcel 。 他支持Output的方式写出文件内容。 而我使用的OSS的Client却只支持InputSteam的方式传入内容。

这就需要我把excel的数据流从InputStream传输到OutputStream中了。 这就要用到JAVA中的管道流功能了。

用法

下面是用法示例:

	//需要注意顺序, PipedOutputStream是管道的输入端, 需要先关闭, 这样输出端就知道管道结束了,才能正常结束try (PipedOutputStream pipedOutputStream = new PipedOutputStream();PipedInputStream pipedInputStream = new PipedInputStream(pipedOutputStream)) {  ThreadUtil.execute(()->{//从数据库中读取内容, 忽略写法 List<Object>  data = ......//写入数据到output中,pipedOutputStream.write(JSON.toJSONBytes(data));//一定要调用这个方法, 不然input端不知道啥时候管道结束,就会一直堵塞等待pipedOutputStream.close();});//从input中读取数据上传到OSS中ossClient.putObject(path, pipedInputStream)} catch (Exception e) {throw new BusinessRuntimeException("接入日志文件下载异常", e);}
  1. 注意管道的关闭顺序, 需要先关闭输入端,这样读取端才能结束阻塞。
  2. 两个流需要在两个线程中,如果在一个线程中,如果先写入数据,不写入结束就不会往下继续执行, 这就失去了管道流的意义。

总结

管道流正确的用法,是用于线程之间互相通信的, 上面的例子是由于EasyExcel的API设计不太合理的, EasyExcel使用不灵活, 所以没办法才使用管道流来把EasyExcel与OSSClient关联起来。

http://www.hrbkazy.com/news/16935.html

相关文章:

  • 专业提供网站建设服务包括window优化大师
  • 兄弟网站制作百度seo推广是什么
  • 做网站项目流程图模板seo排名查询工具
  • 重庆主城区疫情最新消息谷歌优化培训
  • 广饶县城乡规划建设局网站搜索seo
  • 域名的四个组成部分北京优化网站方法
  • 武汉网站制作青岛网站建设优化
  • 网站做超链接的方式有哪些广州网站优化排名系统
  • 禁止百度收录的网站微信管理系统登录入口
  • 做网站贵不seo北京网站推广
  • 电子商务网站体系结构有哪些?常用的搜索引擎有
  • 两个网站如何做端口映射百度小程序入口官网
  • 东莞做网站最好的是哪家佛山网站建设公司哪家好
  • 网站优化快照我想找一个营销团队
  • 河南郑州天气预报15天seo推广哪家服务好
  • 互联网金融网站开发郑州网站营销推广公司
  • 新强生产建设兵团网站北京seo招聘网
  • 遂宁网站建设网站排名英文
  • 西安旅游网站开发排行榜哪个网站最好
  • 佛山营销网站建设服务百度推广收费
  • 公司网站用什么系统百度网盘账号登录入口
  • 北京疫情最新确诊石家庄百度搜索引擎优化
  • 抚州营销型网站建设全网热搜关键词排行榜
  • 企业网站建设的重要性网络广告投放公司
  • 美团网站怎么做谷歌浏览器下载官方正版
  • html网站设计实例代码52种新颖的促销方式
  • 做海外网站 服务器放哪世界杯球队最新排名
  • 中国建筑新闻网网站优化排名工具
  • 怎么建企业自己的网站吗58同城推广
  • 沈阳网站优化建设网站链接查询