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打印的话,就需要安装字体

    
    
  • 相关阅读:
    [转]给明年依然年轻的我们:欲望、外界、标签、天才、时间、人生目标、现实、后悔、和经历
    C#后台发送HTTP请求
    asp.net 用户控件
    P1414 又是毕业季II
    P2254 [NOI2005]瑰丽华尔兹
    P1081 开车旅行
    P1084 疫情控制
    P1852 [国家集训队]跳跳棋
    P1074 靶形数独
    平时二十三测
  • 原文地址:https://www.cnblogs.com/hankuikui/p/11903545.html
Copyright © 2011-2022 走看看