手动清除缓存
- 注入 javax.persistence.EntityManager
- 获取 org.hibernate.Session
- 调用clear();
@Autowired
private EntityManager entityManager;
void method(){
entityManager.unwrap(Session.class).clear();
}
手动提交事务
@Autowired
private EntityManager entityManager;
@Autowired
private PlatformTransactionManager transactionManager;
@Autowired
private TransactionDefinition transactionDefinition;
public User save(User user) {
TransactionStatus transactionStatus = transactionManager.getTransaction(transactionDefinition);
User save = null;
try {
save = userDao.save(user);
transactionManager.commit(transactionStatus);
} catch (Exception e) {
transactionManager.rollback(transactionStatus);
throw e;
}
save = findById(save.getId());
System.out.println("getUpdateDt2: "+save.getUpdateDt());
return save;
}