月夜影视在线观看免费完整_亚洲国产成人精品青青草原_少妇被又大又粗又爽毛片久久黑人_欧美乱子伦videos

深圳熱線

如何在Springboot中配置多個數據庫?springboot的優點是什么?_天天看點

2022-06-12 15:31:37 來源:產業經濟網

如何在Springboot中配置多個數據庫?

一、添加數據庫依賴

在pom.xml文件中添加需要使用的數據庫依賴。例如,如果我們需要使用MySQL和Oracle數據庫,則需要添加以下依賴:

mysql

mysql-connector-java

{MySQL版本號}

com.oracle.database.jdbc

ojdbc8

{Oracle版本號}

二、配置數據源

在Spring Boot項目中,我們可以使用application.properties或application.yml配置文件來配置數據源。通常情況下,我們需要為每個數據庫配置一個數據源。

使用application.properties配置數據源

在application.properties文件中,我們可以使用以下配置來配置數據源:

# MySQL 數據源配置

spring.datasource.mysql.url={MySQL數據庫連接地址}

spring.datasource.mysql.username={MySQL數據庫用戶名}

spring.datasource.mysql.password={MySQL數據庫密碼}

spring.datasource.mysql.driver-class-name=com.mysql.cj.jdbc.Driver

# Oracle 數據源配置

spring.datasource.oracle.url={Oracle數據庫連接地址}

spring.datasource.oracle.username={Oracle數據庫用戶名}

spring.datasource.oracle.password={Oracle數據庫密碼}

spring.datasource.oracle.driver-class-name=oracle.jdbc.driver.OracleDriver

使用application.yml配置數據源

在application.yml文件中,我們可以使用以下配置來配置數據源:

# MySQL 數據源配置

spring:

datasource:

mysql:

url: {MySQL數據庫連接地址}

username: {MySQL數據庫用戶名}

password: {MySQL數據庫密碼}

driver-class-name: com.mysql.cj.jdbc.Driver

# Oracle 數據源配置

spring:

datasource:

oracle:

url: {Oracle數據庫連接地址}

username: {Oracle數據庫用戶名}

password: {Oracle數據庫密碼}

driver-class-name: oracle.jdbc.driver.OracleDriver

三、配置JdbcTemplate

在Spring Boot項目中,我們可以使用JdbcTemplate來訪問數據庫。為了訪問多個數據庫,我們需要為每個數據庫創建一個JdbcTemplate實例。

@Configuration

public class DataSourceConfig {

@Bean(name = "mysqlJdbcTemplate")

public JdbcTemplate mysqlJdbcTemplate(@Qualifier("mysqlDataSource") DataSource dataSource) {

return new JdbcTemplate(dataSource);

}

@Bean(name = "oracleJdbcTemplate")

public JdbcTemplate oracleJdbcTemplate(@Qualifier("oracleDataSource") DataSource dataSource) {

return new JdbcTemplate(dataSource);

}

@Bean(name = "mysqlDataSource")

@ConfigurationProperties(prefix = "spring.datasource.mysql")

public DataSource mysqlDataSource() {

return DataSourceBuilder.create().build();

}

@Bean(name = "oracleDataSource")

@ConfigurationProperties(prefix = "spring.datasource.oracle")

public DataSource oracleDataSource() {

return DataSourceBuilder.create().build();

}

}

在上述代碼中,我們定義了兩個JdbcTemplate實例:mysqlJdbcTemplate和oracleJdbcTemplate。每個JdbcTemplate實例都需要一個對應的數據源,因此我們還定義了兩個數據源:mysqlDataSource和oracleDataSource。

通過@Bean注解,我們將這些實例注冊到Spring容器中。@Qualifier注解用于指定使用哪個數據源。

四、使用JdbcTemplate訪問數據庫

現在我們已經完成了多個數據庫的配置和數據源的創建,可以使用JdbcTemplate來訪問數據庫了。

@Service

public class UserService {

@Autowired

@Qualifier("mysqlJdbcTemplate")

private JdbcTemplate mysqlJdbcTemplate;

@Autowired

@Qualifier("oracleJdbcTemplate")

private JdbcTemplate oracleJdbcTemplate;

public List getAllUsersFromMySQL() {

String sql = "SELECT * FROM user";

return mysqlJdbcTemplate.query(sql, new BeanPropertyRowMapper<>(User.class));

}

public List getAllUsersFromOracle() {

String sql = "SELECT * FROM user";

return oracleJdbcTemplate.query(sql, new BeanPropertyRowMapper<>(User.class));

}

}

在上述代碼中,我們使用@Autowired注解將mysqlJdbcTemplate和oracleJdbcTemplate注入到UserService中。使用JdbcTemplate的query()方法可以執行SQL查詢語句并返回結果。

springboot的優點是什么?

1.可快速構建獨立的 Spring 應用

Spring Boot是一個依靠大量注解實現自動化配置的全新框架。在構建Spring應用時,我們只需要添加相應的場景依賴,Spring Boot就會根據添加的場景依賴自動進行配置,在無須額外手動添加配置的情況下快速構建出一個獨立的Spring應用。

2.直接嵌入Tomcat、Jetty 和Undertow 服務器(無須部署WAR文件)

傳統的Spring應用部署時,通常會將應用打成 WAR包形式并部署到Tomcat、Jetty或Undertow 服務器中。Spring Boot框架內嵌了Tomcat、Jetty和Undertow 服務器,而且可以自動將項目打包,并在項目運行時部署到服務器中。

3.通過依賴啟動器簡化構建配置

在Spring Boot項目構建過程中,無須準備各種獨立的JAR文件,只需在構建項目時根據開發場景需求選擇對應的依賴啟動器“starter”,在引入的依賴啟動器“starter”內部已經包含了對應開發場景所需的依賴,并會自動下載和拉取相關JAR包。例如,在Web開發時,只需在構建項目時選擇對應的Web場景依賴啟動器spring-boot-starter-web,Spring Boot項目便會自動導入spring-webmvc、spring-web、spring-boot-starter-tomcat等子依賴,并自動下載和獲取Web開發需要的相關JAR包。

4.自動化配置Spring和第三方庫

Spring Boot 充分考慮到與傳統Spring 框架以及其他第三方庫融合的場景,在提供了各種場景依賴啟動器的基礎上,內部還默認提供了各種自動化配置類(例如 RedisAuto Configuration)。使用Spring Boot開發項目時,一旦引入了某個場景的依賴啟動器,Spring Boot內部提供的默認自動化配置類就會生效,開發者無須手動在配置文件中進行相關配置(除非開發者需要更改默認配置),從而極大減少了開發人員的工作量,提高了程序的開發效率。

5.提供生產就緒功能

Spring Boot提供了一些用于生產環境運行時的特性,例如指標、監控檢查和外部化配置。其中,指標和監控檢查可以幫助運維人員在運維期間監控項目運行情況;外部化配置可以使運維人員快速、方便地進行外部化配置和部署工作。

6.極少的代碼生成和XML配置

Spring Boot 框架內部已經實現了與Spring以及其他常用第三方庫的整合連接,并提供了默認最優化的整合配置,使用時基本上不需要額外生成配置代碼和XML配置文件。在需要自定義配置的情況下,Spring Boot更加提倡使用Java config(Java 配置類)替換傳統的XML配置方式,這樣更加方便查看和管理。

雖然說 Spring Boot有諸多的優點,但Spring Boot也有一些缺點。例如,Spring Boot入門較為簡單,但是深入理解和學習卻有一定的難度,這是因為SpringBoot是在Spring框架的基礎上推出的,所以讀者想要弄明白Spring Boot的底層運行機制,有必要對Spring框架有一定的了解。

關鍵詞: 怎么在Springboot項目中配置多個數據庫

熱門推薦