我正在研究一个数据访问库,希望能够以最小的配置将它作为依赖项包含在其他项目中(最好只是自动装配一个仓库)。特别是,该库使用自动配置类(在中启用spring.factories)进行设置,并且需要禁用其他自动配置类才能工作(DataSourceAutoConfiguration和HibernateJpaAutoConfiguration)。
是否可以在依赖项目之外执行此操作?
为了使配置尽可能简单,我希望避免将排除项放在从属项目的@SpringBootApplication注释或其spring.autoconfigure.exclude属性中。
更新:
在我的@Configuration上,我尝试添加注释:
@EnableAutoConfiguration(exclude={
DataSourceAutoConfiguration.class,
HibernateJpaAutoConfiguration.class})
Run Code Online (Sandbox Code Playgroud)
这导致
IllegalStateException:配置问题:已检测到循环@Import
和
@ImportAutoConfiguration(exclude={
DataSourceAutoConfiguration.class,
HibernateJpaAutoConfiguration.class})
Run Code Online (Sandbox Code Playgroud)
根本什么都不做。
我有大量对象需要通过 sqlalchemy 插入到 Oracle 数据库中。
使用单独的插入需要花费相当长的时间才能执行。经过搜索后,很明显有更有效的批量插入方法,bulk_insert_mappings、bulk_save_objects 等。这些方法比单独插入的性能更好。然而,我注意到他们似乎将插入分成大约 8 个左右的分组。是否可以将此批量大小增加到 1000 左右?
我一直在使用的性能文档是: http: //docs.sqlalchemy.org/en/latest/faq/performance.html
render_nulls 标志似乎没有效果。如果有帮助的话,我正在使用 cx_Oracle 驱动程序。
额外参考:
session.bulk_insert_mappings(MY_OBJECT, my_object_dicts_for_insert)
根据“after_cursor_execute”事件的测量,生成大约 len(my_object_dicts_for_insert)/8 条语句。有没有办法从 sqlalchemy 或数据库来调整这种行为?
谢谢!
database ×1
java ×1
optimization ×1
performance ×1
python ×1
spring ×1
spring-boot ×1
sqlalchemy ×1