Я хочу применить внешние изменения в Entity. поэтому я использовал refre sh () в EntityManager, он работает в сеансе EntityManager. но он не работает во внешних изменениях.
он основан на SpringBoot 2.x. это мой простой код.
@ExtendWith(SpringExtension.class)
@SpringBootTest
class RewardOrderRepositoryTest {
@Inject
private TestRepository testRepository;
@PersistenceContext
private EntityManager entityManager;
@Test
@Transactional
@Rollback(false)
public void test() {
final Test test = testRepository.findById(8L).get();
assertThat(test.getName(), is("Tom"));
// BREAK POINT : name modify to external mysql client(ex) mysql workbench)
entityManager.refresh(test);
assertThat(test.getName(), is("Alice")); // it's false, still Tom.
}
}
Почему внешние изменения не отражаются? Метод refre sh () используется только в сеансе EntityManager?