zoukankan      html  css  js  c++  java
  • spring boot本地开发与docker容器化部署的差异

    spring boot本地开发与docker容器化部署的差异:

    1. 文件路径及文件名区别大小写:

    本地开发环境为windows操作系统,是忽略大小写的,但容器中区分大小写

    2. docker中的容器内的时区需要单独设置

    docker内的时间与北京时间差8小时,所以需要设置一下 时区,可以在dockerfile中修改,或修改部署的yaml文件:name:TZ value:Asia/Shanghai

    3. 获取模板文件:

    容器化后,Resource下的文件是存在于jar这个文件里面,在磁盘上是没有真实路径存在的,它其实是位于jar内部的一个路径。所以通过ResourceUtils.getFile或者this.getClass().getResource("")方法都无法正确获取文件,只能通过stream的形式获取:

    正确的写法:

    InputStream stream = this.getClass().getClassLoader().getResourceAsStream(/template/opinion/33.docx")

    或者:

    ClassPathResource resource = new ClassPathResource("/template/opinion/33.docx");
    
            //加载模板文件,并替换机构意见书数据
            XWPFTemplate template = XWPFTemplate.compile(resource.getInputStream())
                    .render(model);

    4. 容器内默认是不支持中文字体的。如果需要如pdf打印的话,就需要安装字体

    
    
  • 相关阅读:
    腾讯TDW:大型Hadoop集群应用[转载]
    [转]常见分布式系统数据分布解析
    一种基于Storm的可扩展即时数据处理架构思考
    storm
    storm
    精华文章
    Dubbo使用解析及远程服务框架
    职责链实现的apache.chain使用
    设计模式之享元模式
    SVN安装与eclipseSVN插件基本使用
  • 原文地址:https://www.cnblogs.com/hankuikui/p/11903545.html
Copyright © 2011-2022 走看看