boot打包
程序员文章站
2022-05-03 15:53:11
...
boot项目打包
项目结构:
配置文件application.yml
bp:
datasource:
username: root
password: 1234
url: jdbc:mysql://localhost:3306/test
spring:
profiles:
active: dev
配置文件application-dev.yml
bp:
datasource:
username: root-dev
password: 1234-dev
简单的访问
@RestController
public class ConfigController {
@Autowired
private DataSourceConfig dataSourceConfig;
@RequestMapping("/getConfig")
public Map<String, Object> getConfig(){
Map<String,Object> map = new HashMap<>();
map.put("userName", dataSourceConfig.getUserName() );
map.put("password", dataSourceConfig.getPassword());
map.put("url", dataSourceConfig.getUrl());
return map;
}
}
打包项目
在pom.xml
所在的目录下运行clean package -Dmaven.test.skip=true -f pom.xml
可以发现生成了两个jar包: boot-package-0.0.1-SNAPSHOT.jar
和boot-package-0.0.1-SNAPSHOT.jar.original
运行java -jar boot-package-0.0.1-SNAPSHOT.jar
访问
在浏览器*问http://localhost:8080/getConfig
:
{
"password": "1234-dev",
"userName": "root-dev",
"url": "jdbc:mysql://localhost:3306/test"
}
可以发现虽然在application.yml
中指明加载dev配置文件,但是,boot还是会先加载application.yml
中的属性,然后,加载application-dev.yml
,用application-dev.yml
中的属性覆盖,如果application.yml
中有而application-dev.yml
中没有属性,那么也会加载application.yml
中的属性
推荐阅读
-
将Python代码打包为jar软件的简单方法
-
Spring Boot利用@Async如何实现异步调用:自定义线程池
-
Spring Boot利用@Async异步调用:ThreadPoolTaskScheduler线程池的优雅关闭详解
-
Spring Boot+maven打war包的方法
-
Java Spring boot 2.0 跨域问题的解决
-
Spring + Spring Boot + MyBatis + MongoDB的整合教程
-
Spring boot + LayIM + t-io 实现文件上传、 监听用户状态的实例代码
-
Maven工程搭建spring boot+spring mvc+JPA的示例
-
Spring Boot 与 Kotlin 使用JdbcTemplate连接MySQL数据库的方法
-
JSP 多个文件打包下载代码