2023-12-01
|
ZH
调用DefaultEnvironmentWorker.start();或spring.AutoConfiguration注册DataSourceLoadListener和不同的DataSourceLoader到上下文中 DataSourceLoadListener.load()  
2023-11-30
|
ZH
1 anyline-boot 这个有没有都可以,主要是为了配合IDE中编辑配置文件时的自动补齐,里面只有几个配置类 2 anyline-core
2023-11-30
|
ZH
这三部分的执行流程,基本上已固定,顶级父类统一实现。主要区别DDL命令合成、metadata命令合成、metadata结果集封装三个子流程。其中metadata的差异最大。 比较乐观的是大部分数据库可以归类到pg,mysql,oracle等几个系列,所在大部分方法在父类中已经实现了,只有极个别不
2023-12-01
|
ZH
关于切换数据源常用的方式是通过ThreadLocal干预DynamicDataSource返回值来实现。 理论是上可以的 但在JDK8实际应用中发现ThreadLocal并不可靠,特别是在线程池或线程共享环境中会导致数据源错乱。 大家经常百度的 为什么数据源切换失败,如果是偶尔失败&nbs
2022-12-02
|
ZH
切换数据源有两种试: 1.使用通用AnylineService实例 1.1)通过DataSourceHoldersetDataSource("crm")方式设置当前数据源,再调用service.query等方法操作数据库 1.2)service.query("USER");在表名前添加数据源名称 2.通过ServiceProxy返回数据源对应的service(推荐使用这一种方式,隔离性更强,不容易混淆)
2023-07-17
|
ZH
如果是单个数据源默认情况下AnylineController中已经默认注入了一个AnylineService service;这个service可以操作多个数据源bean.id = @Service("anyline.service") 但是在多数据源情况下,为了更强的隔离性,避免线程共享