Class TrackingDataSource

java.lang.Object
ai.specformula.spring.TrackingDataSource
All Implemented Interfaces:
Wrapper, CommonDataSource, DataSource

public class TrackingDataSource extends Object implements DataSource
JDBC DataSource 追蹤代理,本身即為 DataSource。

透過 JDK 動態代理攔截 getConnection() 回傳的 Connection / Statement, 解析 SQL 中的 INSERT INTO 並記錄被寫入的 table。 清理時只清理 dirty tables,大幅減少 disposeWorld 時間。

由 TestcontainerFactory 建立時自動包裝; SpecFormulaBridge.setDataSource(String, DataSource) 會以 instanceof TrackingDataSource 判斷是否啟用 dirty table tracking。