首页 > 编程语言 > 详细

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

时间:2019-11-21 10:09:59      阅读:89      评论:0      收藏:0      [点我收藏+]

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

 

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

原文:https://www.cnblogs.com/hankuikui/p/11903545.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!