informasi kontak saya
Surat[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
- @ConfigurationProperties(prefix = "hive")
- @Data
- public class HiveDruidConfig {
-
- private String url;
- private String user;
- private String password;
- private String driverClassName;
- private int initialSize;
- private int minIdle;
- private int maxActive;
- private int maxWait;
- private int timeBetweenEvictionRunsMillis;
- private int minEvictableIdleTimeMillis;
- private String validationQuery;
- private boolean testWhileIdle;
- private boolean testOnBorrow;
- private boolean testOnReturn;
- private boolean poolPreparedStatements;
- private int maxPoolPreparedStatementPerConnectionSize;
-
- @Bean(name = "hiveDruidDataSource")
- @Qualifier("hiveDruidDataSource")
- public DataSource dataSource() {
- DruidDataSource datasource = new DruidDataSource();
- datasource.setUrl(url);
- datasource.setUsername(user);
- datasource.setPassword(password);
- datasource.setDriverClassName(driverClassName);
-
- // pool configuration
- datasource.setInitialSize(initialSize);
- datasource.setMinIdle(minIdle);
- datasource.setMaxActive(maxActive);
- datasource.setMaxWait(maxWait);
- datasource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis);
- datasource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis);
- datasource.setValidationQuery(validationQuery);
- datasource.setTestWhileIdle(testWhileIdle);
- datasource.setTestOnBorrow(testOnBorrow);
- datasource.setTestOnReturn(testOnReturn);
- datasource.setPoolPreparedStatements(poolPreparedStatements);
- datasource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize);
- return datasource;
- }
-
- @Bean(name = "hiveDruidTemplate")
- public JdbcTemplate hiveDruidTemplate(@Qualifier("hiveDruidDataSource") DataSource dataSource) {
- return new JdbcTemplate(dataSource);
- }
Kode ini adalah contoh penggunaan kumpulan koneksi Spring Boot dan Druid untuk mengonfigurasi koneksi database Hive.Ini menunjukkan bagaimana cara mengopernya@ConfigurationProperties
Anotasi untuk menyederhanakan pengikatan properti konfigurasi, dan cara menggunakan Spring@Bean
Anotasi untuk dibuat dan dikelolaDataSource
DanJdbcTemplate
Kacang. Berikut penjelasan rinci pengajaran kode ini:
@ConfigurationProperties(prefix = "hive")
application.properties
atauapplication.yml
) di awalan adalahhive
Properti terikat pada kelas saat ini (HiveDruidConfig
) bidang. Hal ini membuat konfigurasi koneksi database dan parameter terkait lainnya menjadi sangat mudah dan terpusat.application.properties
Adahive.url=jdbc:hive2://...
,Jadiurl
Bidang tersebut akan secara otomatis diberi nilai.@Data
dataSource()
metode@Bean
Anotasi, menunjukkan bahwa ia akan mengembalikan Bean, yang akan dikelola oleh container Spring.Dalam contoh ini, ia membuat dan mengkonfigurasi aDruidDataSource
Contohnya, ini adalah implementasi kumpulan koneksi Druid.@ConfigurationProperties
Dapatkan dari file konfigurasi.DruidDataSource
misalnya, wadah Spring akan mendaftarkannya sebagai sebuah instance bernamahiveDruidDataSource
Kacang.hiveDruidTemplate()
metode@Bean
anotasi, yang menciptakan aJdbcTemplate
Misalnya, instance ini digunakan untuk menyederhanakan operasi database.DataSource
ketik parameter, lulus@Qualifier("hiveDruidDataSource")
Anotasi ditentukan menggunakan namahiveDruidDataSource
Kacang Sumber Data.JdbcTemplate
misalnya, wadah Spring akan mendaftarkannya sebagai sebuah instance bernamahiveDruidTemplate
Kacang.Kode ini menunjukkan cara mengoper@ConfigurationProperties
Dan@Bean
Anotasi untuk mengonfigurasi dan mengelola koneksi database. Dengan menggunakan kumpulan koneksi Druid, kinerja dan stabilitas operasi database dapat lebih ditingkatkan.Pada saat yang sama, melaluiJdbcTemplate
, pengembang dapat melakukan operasi database dengan lebih nyaman tanpa menulis kode JDBC dalam jumlah besar.