网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

如何部署同一个Springbootweb应用到不同的环境

在现实项目当中我们往往都有不同的部署环境,例如:dev数据库, system test 数据库 和production 数据库, 那么如何把同一个spring boot web app 部署到不同的数据库环境呢?

成都创新互联2013年开创至今,先为辉县等服务建站,辉县等地企业,进行企业商务咨询服务。为辉县企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

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.properties
application-sys.properties
application-prod.properties

注意 application-{profile} 对应不同的环境。 可以通过java -jar -Dspring.profile.active=sys 来切换不同的配置文件

3 配置不同的jdbc 信息到相应的配置文件当中

在application.properties 文件中
spring.datasource.url=jdbc:oracle:thin:@dev01.example.com:1521:lausoned
spring.datasource.username=devUser
spring.datasource.password=XXXXX
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

在application-sys.properties
spring.datasource.url=jdbc:oracle:thin:@sys01.example.com:1521:lausoned
spring.datasource.username=sysUser
spring.datasource.password=XXXXX
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

在application-prod.properties
spring.datasource.url=jdbc:oracle:thin:@prodv01.example.com:1521:lausoned
spring.datasource.username=prodUser
spring.datasource.password=XXXXX
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

4 配置spring boot 

@Configuration
public 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. 

@Repository
public class AsuDaoImpl implements IAsuDao {
	@Autowired
	@Qualifier(value="asuJDBC")
	private JdbcTemplate jdbcTemplate;

}	

这里我创建一个dao interface, 和dao Impl来注入这个jdbcTemplate. 


名称栏目:如何部署同一个Springbootweb应用到不同的环境
路径分享:http://bjjierui.cn/article/ghedde.html

其他资讯