У меня есть приложение Struts, которое использует Hibernate для доступа к базе данных MYSQL. У меня есть несколько страниц, которые вносят изменения в БД. Эти изменения проходят нормально, данные обновляются в БД. Однако при просмотре страницы, на которой должна отображаться эта обновленная информация, ее часто нет, и даже после нескольких обновлений страницы ее по-прежнему нет. В конце концов он появится. Я предполагаю, что это как-то связано с кэшированием данных в спящем режиме, но как я могу обеспечить актуальность данных? Я предполагал, что, когда все пройдет через сеанс гибернации, он поймет изменения?
Код, который я использую для обновления:
hSession = HibernateUtil.getSessionFactory().getCurrentSession();
Transaction tx = hSession.getTransaction();
tx.begin();
hSession.update(user) ;
Затем снова вытащить этого пользователя:
org.hibernate.Session hSession = HibernateUtil.getSessionFactory()
.getCurrentSession();
Transaction tx = hSession.beginTransaction();
User u= (User) hSession.load(User.class, userID);