如何部署同一个Spring boot web 应用到不同的环境
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,在现实项目当中我们往往都有不同的部署环境,例如:dev数据库, system test 数据库 和production 数据库, 那么如何把同一个spring boot web app 部署到不同的数
千家信息网最后更新 2025年11月08日如何部署同一个Spring boot web 应用到不同的环境
在现实项目当中我们往往都有不同的部署环境,例如:dev数据库, system test 数据库 和production 数据库, 那么如何把同一个spring boot web app 部署到不同的数据库环境呢?
spring boot 提供一个profile的功能, 通过配置多个profile文件,实现同一应用切换到不同的部署环境当中。这里不在详细介绍profile的概念。有兴趣自行到官网查询。这里通过代码来说明如何配置spring boot 来实现spring JDBC tempalte切换不同的jdbc数据源
1 在pom.xml引入必须的依赖
org.springframework.boot spring-boot-starter-jdbc org.springframework spring-jdbc com.oracle ojdbc6 11.2.0.3
注:这里我使用的是oracle jdbc。
2 创建不同的spring boot 配置文件,这三个文件分表代表dev,system,production
application.propertiesapplication-sys.propertiesapplication-prod.properties
注意 application-{profile} 对应不同的环境。 可以通过java -jar -Dspring.profile.active=sys 来切换不同的配置文件
3 配置不同的jdbc 信息到相应的配置文件当中
在application.properties 文件中spring.datasource.url=jdbc:oracle:thin:@dev01.example.com:1521:lausonedspring.datasource.username=devUserspring.datasource.password=XXXXXspring.datasource.driver-class-name=oracle.jdbc.OracleDriver在application-sys.propertiesspring.datasource.url=jdbc:oracle:thin:@sys01.example.com:1521:lausonedspring.datasource.username=sysUserspring.datasource.password=XXXXXspring.datasource.driver-class-name=oracle.jdbc.OracleDriver在application-prod.propertiesspring.datasource.url=jdbc:oracle:thin:@prodv01.example.com:1521:lausonedspring.datasource.username=prodUserspring.datasource.password=XXXXXspring.datasource.driver-class-name=oracle.jdbc.OracleDriver
4 配置spring boot
@Configurationpublic class DataBaseConfig { @Bean(name="asuDBsource") @ConfigurationProperties(prefix="spring.datasource") public DataSource primaryDataSource() { return DataSourceBuilder.create().build(); } @Bean(name = "asuJDBC") @Autowired public JdbcTemplate blcJdbcTemplate(@Qualifier("asuDBsource") DataSource source) { return new JdbcTemplate(source); }}这里我创建了一个DataBaseConfig.java 的文件来配置jdbc 连接到数据库并且返回数据源, 并且配置这个数据源来返回jdbcTemplate。 我这里使用的是传统jdbc 连接数据库并没有使用hibernate.
5 通过依赖注入(DI) 来调用JDBCTemplate.
@Repositorypublic class AsuDaoImpl implements IAsuDao { @Autowired @Qualifier(value="asuJDBC") private JdbcTemplate jdbcTemplate;} 这里我创建一个dao interface, 和dao Impl来注入这个jdbcTemplate.
数据
配置
不同
文件
数据库
环境
数据源
切换
应用
三个
代码
代表
传统
信息
兴趣
分表
功能
可以通过
多个
概念
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广州电商软件开发定做
网络安全体会感悟300字
数据库的管理实验报告
access数据库读失败
存储过程往表中插数据库
软件开发每周例会会议记录
数据库安装好了如何新建
合肥新富财经股票软件开发公司
数据库技术及应用vba
上海陌核互联网科技怎么样
计算机网络安全的机密性
剑网三缘起怀旧服数据库
(特约)风豹互联网科技
免费备案服务器
成都工控软件开发价格表
德惠先进网络技术咨询售后服务
吉祥兔子游戏软件开发
荷兰发包服务器渠道
数据库技术支持岗位职责
服务器 国外品牌
代理服务器 vpn 区别
数据库ogg同步卡死
东莞谷子网络技术公司
军用软件开发文档要求
榆林市政府网络安全
我校举行网络安全培训讲座
网络安全板块个股
服务器测试工具
四川定制软件开发哪家好
rt服务器