在Spring Boot的application.properties中使用环境变量

声明:本文CSDN作者原创投稿文章,未经许可禁止任何形式的转载,原文链接

在Terminal中,输入env就会得到当前终端的环境变量。

在开发软件的过程中,有些值是需要随着环境改变的,比如数据库的IP端口,用户名等。我们不能把这些值硬编码进入代码中,再打包成jar包,这样使用起来是很不方便的。所以我们需要env,在启动jar包的时候传入变量。

application.properties中,我们只需要使用${变量名}就可以声明一个使用环境变量的值,比如

server.port=${SERVER_PORT}

如果想向这个值声明一个默认值,以确保未在环境变量中找到此值时不会出错,使用${变量名:默认值}即可,比如

server.port=${SERVER_PORT:8080}

在开发中,使用IntelliJ IDEA修改启动配置,即可在开发环境中对这些变量进行配置。
Run Configurations

点击Environment Variables编辑栏最右侧的按钮,就可以对多个环境变量进行设置:
Environment Variables

如果这样,将项目构建成Docker镜像时,需要在Dockerfile中新增Env变量:

ENV MYSQL_DB_HOST='127.0.0.1' MYSQL_DB_PORT=3306 MYSQL_DB_USERNAME='root'

在启动容器时,需要使用-v参数来声明环境变量,或者在docker-compose文件中声明environment来实现对环境变量的正确赋值。

猜你喜欢

转载自blog.csdn.net/BlingblingFu/article/details/120857303
今日推荐