Κοινή χρήση τεχνολογίας

Επεξήγηση συστήματος ολοκλήρωσης Spring Boot Vue 7

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

 

Πρακτική HIVE αποθήκης δεδομένων

  1. @ConfigurationProperties(prefix = "hive")
  2. @Data
  3. public class HiveDruidConfig {
  4. private String url;
  5. private String user;
  6. private String password;
  7. private String driverClassName;
  8. private int initialSize;
  9. private int minIdle;
  10. private int maxActive;
  11. private int maxWait;
  12. private int timeBetweenEvictionRunsMillis;
  13. private int minEvictableIdleTimeMillis;
  14. private String validationQuery;
  15. private boolean testWhileIdle;
  16. private boolean testOnBorrow;
  17. private boolean testOnReturn;
  18. private boolean poolPreparedStatements;
  19. private int maxPoolPreparedStatementPerConnectionSize;
  20. @Bean(name = "hiveDruidDataSource")
  21. @Qualifier("hiveDruidDataSource")
  22. public DataSource dataSource() {
  23. DruidDataSource datasource = new DruidDataSource();
  24. datasource.setUrl(url);
  25. datasource.setUsername(user);
  26. datasource.setPassword(password);
  27. datasource.setDriverClassName(driverClassName);
  28. // pool configuration
  29. datasource.setInitialSize(initialSize);
  30. datasource.setMinIdle(minIdle);
  31. datasource.setMaxActive(maxActive);
  32. datasource.setMaxWait(maxWait);
  33. datasource.setTimeBetweenEvictionRunsMillis(timeBetweenEvictionRunsMillis);
  34. datasource.setMinEvictableIdleTimeMillis(minEvictableIdleTimeMillis);
  35. datasource.setValidationQuery(validationQuery);
  36. datasource.setTestWhileIdle(testWhileIdle);
  37. datasource.setTestOnBorrow(testOnBorrow);
  38. datasource.setTestOnReturn(testOnReturn);
  39. datasource.setPoolPreparedStatements(poolPreparedStatements);
  40. datasource.setMaxPoolPreparedStatementPerConnectionSize(maxPoolPreparedStatementPerConnectionSize);
  41. return datasource;
  42. }
  43. @Bean(name = "hiveDruidTemplate")
  44. public JdbcTemplate hiveDruidTemplate(@Qualifier("hiveDruidDataSource") DataSource dataSource) {
  45. return new JdbcTemplate(dataSource);
  46. }

Αυτός ο κώδικας είναι ένα παράδειγμα χρήσης της πισίνας σύνδεσης Spring Boot και Druid για τη διαμόρφωση μιας σύνδεσης βάσης δεδομένων Hive.Δείχνει πώς να περάσει@ConfigurationPropertiesΣχολιασμοί για την απλοποίηση της σύνδεσης των ιδιοτήτων διαμόρφωσης και τον τρόπο χρήσης του Spring@BeanΣχολιασμοί για δημιουργία και διαχείρισηDataSourceκαιJdbcTemplate Φασόλι. Ακολουθεί μια λεπτομερής διδακτική επεξήγηση αυτού του κώδικα:

1. @ConfigurationProperties(prefix = "hive")

  • αποτέλεσμα: Αυτός ο σχολιασμός χρησιμοποιείται για την προσθήκη αρχείων διαμόρφωσης (όπως π.χapplication.propertiesήapplication.yml) στο πρόθεμα είναιhiveΟι ιδιότητες του είναι δεσμευμένες στην τρέχουσα κλάση (HiveDruidConfig ) πεδίο. Αυτό καθιστά τη διαμόρφωση των συνδέσεων βάσης δεδομένων και άλλων σχετικών παραμέτρων πολύ βολική και κεντρική.
  • παράδειγμα: Αν είστεapplication.propertiesΥπάρχειhive.url=jdbc:hive2://...,ΕτσιurlΣτο πεδίο θα εκχωρηθεί αυτόματα μια τιμή.

2. @Data

  • αποτέλεσμα : Αυτός ο σχολιασμός προέρχεται από τη βιβλιοθήκη Lombok, η οποία δημιουργεί αυτόματα μεθόδους getter, setter, equals, hashCode και toString για τα πεδία της κλάσης. Αυτό μειώνει τον κωδικό λέβητα και κάνει τις τάξεις πιο καθαρές.

3. Ορισμός πεδίου

  • Στην κλάση ορίζονται πολλά ιδιωτικά πεδία, τα οποία αντιστοιχούν στις παραμέτρους διαμόρφωσης της σύνδεσης βάσης δεδομένων Hive και του χώρου συγκέντρωσης σύνδεσης Druid.

4. dataSource()μέθοδος

  • αποτέλεσμα: Αυτή η μέθοδος χρησιμοποιεί@Bean Σχολιασμός, που υποδεικνύει ότι θα επιστρέψει ένα Bean, το οποίο θα διαχειρίζεται το κοντέινερ Spring.Σε αυτό το παράδειγμα, δημιουργεί και διαμορφώνει aDruidDataSourceΠαράδειγμα, αυτή είναι η υλοποίηση της πισίνας σύνδεσης Druid.
  • Διαμόρφωση: Διάφορες ιδιότητες του DruidDataSource ορίζονται μέσω της μεθόδου ρυθμιστή μέσα στη μέθοδο Αυτές οι ιδιότητες προέρχονται από τις τιμές των πεδίων κλάσης και αυτές οι τιμές μεταβιβάζονται@ConfigurationPropertiesΑποκτήστε το από το αρχείο ρυθμίσεων.
  • επιστρεφόμενη τιμή:Η μέθοδος επιστρέφει τα διαμορφωμέναDruidDataSourceΓια παράδειγμα, το κοντέινερ Spring θα το καταχωρήσει ως παρουσία με όνομαhiveDruidDataSourceΦασόλι.

5. hiveDruidTemplate()μέθοδος

  • αποτέλεσμα: Χρησιμοποιείται και αυτή η μέθοδος@Beanσχολιασμός, που δημιουργεί αJdbcTemplateΓια παράδειγμα, αυτή η παρουσία χρησιμοποιείται για την απλοποίηση των λειτουργιών της βάσης δεδομένων.
  • παράμετρος: η μέθοδος λαμβάνει αDataSourceπαραμέτρους τύπου, πέρασαν@Qualifier("hiveDruidDataSource")Ο σχολιασμός καθορίζεται χρησιμοποιώντας το όνομαhiveDruidDataSourceDataSource Bean.
  • επιστρεφόμενη τιμή:Η μέθοδος επιστρέφει τα διαμορφωμέναJdbcTemplateΓια παράδειγμα, το κοντέινερ Spring θα το καταχωρήσει ως παρουσία με όνομαhiveDruidTemplateΦασόλι.

Συνοψίζω

Αυτός ο κωδικός δείχνει πώς να περάσει@ConfigurationPropertiesκαι@Bean Σχολιασμοί για τη διαμόρφωση και τη διαχείριση των συνδέσεων βάσης δεδομένων. Με τη χρήση της πισίνας σύνδεσης Druid, η απόδοση και η σταθερότητα των λειτουργιών της βάσης δεδομένων μπορούν να βελτιωθούν περαιτέρω.Ταυτόχρονα, μέσωJdbcTemplate, οι προγραμματιστές μπορούν να εκτελούν λειτουργίες βάσης δεδομένων πιο άνετα χωρίς να γράφουν μεγάλο αριθμό κώδικα JDBC.