Есть ли способ удалить кеш для конкретного именованного запроса?Я действительно не хочу удалять для всех запросов ... Или есть какой-то другой обходной путь?
Он не работает, даже если я использую обычный класс запросов ...
IЯ использую Hibernate 3.6, Glassfish 3.1.1, это Java-приложение EE (код из модуля EJB)
У меня что-то вроде этого:
public User getUserByName(String username) {
try {
return (User) em.createNamedQuery("User.getUserByName").setParameter("username", username).getSingleResult();
} catch (NoResultException e) {
return null;
}
}
//...
if(getUserByName(entity.getUsername()!=null) {
em.persist(entity);
}
//...
// username added in database (checked)
if(getUserByName(entity.getUsername())==null) {
//something else
}
второй раз я использую "getUserByName"опять ... ноль ... почему?
Я думаю, что это модуль кеша (потому что, если я установил для своего провайдера eclipselink, он работает как надо) ...
Яиспользуя спящий режим для поиска ..