minhas informações de contato
Correspondência[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);
- }
Este código é um exemplo de uso do pool de conexões Spring Boot e Druid para configurar uma conexão de banco de dados Hive.Mostra como passar@ConfigurationProperties
Anotações para simplificar a vinculação de propriedades de configuração e como usar o Spring@Bean
Anotações para criar e gerenciarDataSource
eJdbcTemplate
Feijão. A seguir está uma explicação de ensino detalhada deste código:
@ConfigurationProperties(prefix = "hive")
application.properties
ouapplication.yml
) no prefixo éhive
As propriedades de estão vinculadas à classe atual (HiveDruidConfig
) campo. Isso torna a configuração de conexões de banco de dados e outros parâmetros relacionados muito conveniente e centralizada.application.properties
Háhive.url=jdbc:hive2://...
,Entãourl
O campo receberá automaticamente um valor.@Data
dataSource()
método@Bean
Anotação, indicando que retornará um Bean, que será gerenciado pelo container Spring.Neste exemplo, ele cria e configura umDruidDataSource
Exemplo, esta é a implementação do pool de conexões Druid.@ConfigurationProperties
Obtenha-o no arquivo de configuração.DruidDataSource
instância, o contêiner Spring irá registrá-lo como uma instância chamadahiveDruidDataSource
Feijão.hiveDruidTemplate()
método@Bean
anotação, que cria umaJdbcTemplate
Instância, esta instância é usada para simplificar as operações do banco de dados.DataSource
parâmetros de tipo, passados@Qualifier("hiveDruidDataSource")
A anotação é especificada usando o nomehiveDruidDataSource
Feijão DataSource.JdbcTemplate
instância, o contêiner Spring irá registrá-lo como uma instância chamadahiveDruidTemplate
Feijão.Este código mostra como passar@ConfigurationProperties
e@Bean
Anotações para configurar e gerenciar conexões de banco de dados. Ao usar o pool de conexões Druid, o desempenho e a estabilidade das operações de banco de dados podem ser melhorados ainda mais.Ao mesmo tempo, atravésJdbcTemplate
, os desenvolvedores podem realizar operações de banco de dados de maneira mais conveniente, sem escrever uma grande quantidade de código JDBC.