Spring Boot test с одним транзакционным источником данных, считывающим незафиксированные данные из другого - PullRequest
0 голосов
/ 20 января 2020

У меня возникла следующая проблема при написании тестового примера с использованием нескольких источников данных.

В источнике данных (1) я люблю готовить данные.

В источнике данных (2) я люблю импортировать данные from (1).

Теперь у меня проблема в том, что все это @Transactional. В результате я не могу вставить данные из (2), потому что данные из (1) еще не зафиксированы.

Пример сокращенного кода:

@Test
@Transactional    
public void importTest(){
    jdbcTemplateDs1.update("INSERT INTO MYTABLE (COL) VALUES ('TEST")');
    jdbcTemplateDs2.update("INSERT INTO OTHERTABLE (SELECT * FROM MYTABLE@DATASOURCE1 WHERE col = 'TEST)");
    //results in 0 because the first statement wasn't commited yet
    jdbcTemplateDs2.queryForList("SELECT * FROM OTHERTABLE").size()
}

Есть ли способ сделать это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...