• 阶段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


  • 相关阅读:
    ansible源码解读
    python标准模块(下)
    python学习之算法、自定义模块、系统标准模块(上)
    pathon 基础学习-集合(set),单双队列,深浅copy,内置函数
    python的map,filter,reduce学习
    python 列表
    python生成器、装饰器、正则
    python 模块学习
    python基础学习(一)--数据类型
    时间复杂度的计算
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11624460.html
Copyright © 2020-2023  润新知