τα στοιχεία επικοινωνίας μου
Ταχυδρομείο[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);
- }
Αυτός ο κώδικας είναι ένα παράδειγμα χρήσης της πισίνας σύνδεσης Spring Boot και Druid για τη διαμόρφωση μιας σύνδεσης βάσης δεδομένων Hive.Δείχνει πώς να περάσει@ConfigurationProperties
Σχολιασμοί για την απλοποίηση της σύνδεσης των ιδιοτήτων διαμόρφωσης και τον τρόπο χρήσης του Spring@Bean
Σχολιασμοί για δημιουργία και διαχείρισηDataSource
καιJdbcTemplate
Φασόλι. Ακολουθεί μια λεπτομερής διδακτική επεξήγηση αυτού του κώδικα:
@ConfigurationProperties(prefix = "hive")
application.properties
ήapplication.yml
) στο πρόθεμα είναιhive
Οι ιδιότητες του είναι δεσμευμένες στην τρέχουσα κλάση (HiveDruidConfig
) πεδίο. Αυτό καθιστά τη διαμόρφωση των συνδέσεων βάσης δεδομένων και άλλων σχετικών παραμέτρων πολύ βολική και κεντρική.application.properties
Υπάρχειhive.url=jdbc:hive2://...
,Ετσιurl
Στο πεδίο θα εκχωρηθεί αυτόματα μια τιμή.@Data
dataSource()
μέθοδος@Bean
Σχολιασμός, που υποδεικνύει ότι θα επιστρέψει ένα Bean, το οποίο θα διαχειρίζεται το κοντέινερ Spring.Σε αυτό το παράδειγμα, δημιουργεί και διαμορφώνει aDruidDataSource
Παράδειγμα, αυτή είναι η υλοποίηση της πισίνας σύνδεσης Druid.@ConfigurationProperties
Αποκτήστε το από το αρχείο ρυθμίσεων.DruidDataSource
Για παράδειγμα, το κοντέινερ Spring θα το καταχωρήσει ως παρουσία με όνομαhiveDruidDataSource
Φασόλι.hiveDruidTemplate()
μέθοδος@Bean
σχολιασμός, που δημιουργεί αJdbcTemplate
Για παράδειγμα, αυτή η παρουσία χρησιμοποιείται για την απλοποίηση των λειτουργιών της βάσης δεδομένων.DataSource
παραμέτρους τύπου, πέρασαν@Qualifier("hiveDruidDataSource")
Ο σχολιασμός καθορίζεται χρησιμοποιώντας το όνομαhiveDruidDataSource
DataSource Bean.JdbcTemplate
Για παράδειγμα, το κοντέινερ Spring θα το καταχωρήσει ως παρουσία με όνομαhiveDruidTemplate
Φασόλι.Αυτός ο κωδικός δείχνει πώς να περάσει@ConfigurationProperties
και@Bean
Σχολιασμοί για τη διαμόρφωση και τη διαχείριση των συνδέσεων βάσης δεδομένων. Με τη χρήση της πισίνας σύνδεσης Druid, η απόδοση και η σταθερότητα των λειτουργιών της βάσης δεδομένων μπορούν να βελτιωθούν περαιτέρω.Ταυτόχρονα, μέσωJdbcTemplate
, οι προγραμματιστές μπορούν να εκτελούν λειτουργίες βάσης δεδομένων πιο άνετα χωρίς να γράφουν μεγάλο αριθμό κώδικα JDBC.