您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

通过使用Spring Boots application.properties优化JDBC的获取大小

通过使用Spring Boots application.properties优化JDBC的获取大小

A BeanPostProcessor将以处理所有beanApplicationContext,这样,您可以添加其他配置,或者根据需要完全替换它。

您可以创建一个BeanPostProcessor属性添加到已配置的DataSourcecommons- dbcp如果您相应地使用其他DataSource修改,则下面的示例假定使用1或2 。

public class DataSourceConfiguringBeanPostProcessor implements BeanPostProcessor {
    private final Map<String,String> properties = new HashMap<>;

    public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
        if (bean instance BasicDataSource ) { 
            for (Map.Entry<String, String> prop : properties.entrySet()) {
                ((BasicDataSource) bean).addConnectionProperty(prop.getKey(), prop.getValue());
            }
        }
        return bean;
    }

    public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
        return bean;
    }

    public void setProperties(Map<String, String> properties) {
        this.properties.putAll(properties);
    }
}

现在,您可以将其添加到配置中,它将属性添加DataSourcebean。

@Bean
public BeanPostProcessor dataSourcePostProcessor() {
    DataSourceConfiguringBeanPostProcessor processor = new DataSourceConfiguringBeanPostProcessor();
    Map<String, String> properties = new HashMap<>();
    properties.put("defaultRowPrefetch", "15");
    properties.put("defaultBatchValue", "25");
    processor.setProperties(properties);
    return processor;
}

这应该可以完成配置数据源的技巧。

Java 2022/1/1 18:14:11 有584人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶