阶段5 3.微服务项目【学成在线】_day06 页面发布 课程管理_03-页面发布-消费方Cms Client-消费方法-service

消息内容采用json格式存储数据,如下:
页面id:发布页面的id

{
"pageId":""
}

现在做的是消息的消费方

定义dao

从cms的项目里面复制CmsPageRepository到cms-client的项目里面。

再复制CmsPageRepository改个名字叫做CmsSiteRepository

把泛型的参数改成CmsSite

定义Service。叫做PageService


savePageToServerPage方法从FS里面获取到页面 ,并保存到具体的路径。

htmlField这是html的id

新建方法根据id查询CmsPage


在主方法内调用,这样就得到了页面的信息

根据id查询gridFS中的数据

从cms项目里面 复制MongoConfig这个类过来。这个是Mongo的配置文件

这样我们需要吧GridFsTemplate和GridFSBucket注入进来。通过这两个注入的 就可以拿到文件的内容了。



主方法调用拿到InputStream

加入日志





得到站点的信息的方法

注入CmsSite

主方法调用


下面获取站点的物理路径


加上站点的屋里路径的属性

这样我们就可以拿到站点的物理路径了。


最终得到页面的屋里路径

流操作,数据写入磁盘

用IOUntils的工具包。把输入流拷贝到输出流

输出流应该指向的是PagePath


关闭流也需要try catch




如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
posted @   高山-景行  阅读(209)  评论(0编辑  收藏  举报
编辑推荐:
· 一文彻底搞懂 MCP:AI 大模型的标准化工具箱
· 电商平台中订单未支付过期如何实现自动关单?
· 用 .NET NativeAOT 构建完全 distroless 的静态链接应用
· 为什么构造函数需要尽可能的简单
· 探秘 MySQL 索引底层原理,解锁数据库优化的关键密码(下)
阅读排行:
· 短信接口被刷爆:我用Nginx临时止血
· 面试官:如果某个业务量突然提升100倍QPS你会怎么做?
· .NET 平台上的开源模型训练与推理进展
· 聊聊智商税:AI知识库
· Google发布A2A开源协议:“MCP+A2A”成未来标配?
点击右上角即可分享
微信分享提示