Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / как очистить кэш eclipselink / 5 сообщений из 5, страница 1 из 1
06.08.2018, 21:18
    #39683975
vlad2018
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как очистить кэш eclipselink
Доброго времени суток!
Подскажите, потому как ранее не сталкивался с подобным, как можно очищать кэш eclipselink автоматически по истечении определенного времени?
Заранее благодарен за помощь
...
Рейтинг: 0 / 0
07.08.2018, 08:00
    #39684041
fplab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как очистить кэш eclipselink
...
Рейтинг: 0 / 0
07.08.2018, 23:47
    #39684538
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как очистить кэш eclipselink
Главный вопрос какой именно кэш?

если тот что eclipse use internally then

em.getEntityManagerFactory().getCache().evictAll();

взято туточки https://wiki.eclipse.org/EclipseLink/Examples/JPA/Caching


если явное jpa кэширование то прям в аннотации
https://www.eclipse.org/eclipselink/documentation/2.4/concepts/cache001.htm

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
@Entity
@Cache(
  type=CacheType.SOFT, // Cache everything until the JVM decides memory is low.
  size=64000  // Use 64,000 as the initial cache size.
  expiry=360000,  // 6 minutes
  coordinationType=CacheCoordinationType.INVALIDATE_CHANGED_OBJECTS  // if cache coordination is used, only send invalidation messages.
)
public class Employee {
  ...
}
...
Рейтинг: 0 / 0
09.08.2018, 09:33
    #39685232
vlad2018
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как очистить кэш eclipselink
llemingГлавный вопрос какой именно кэш?

если тот что eclipse use internally then

em.getEntityManagerFactory().getCache().evictAll();

взято туточки https://wiki.eclipse.org/EclipseLink/Examples/JPA/Caching


если явное jpa кэширование то прям в аннотации
https://www.eclipse.org/eclipselink/documentation/2.4/concepts/cache001.htm

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
@Entity
@Cache(
  type=CacheType.SOFT, // Cache everything until the JVM decides memory is low.
  size=64000  // Use 64,000 as the initial cache size.
  expiry=360000,  // 6 minutes
  coordinationType=CacheCoordinationType.INVALIDATE_CHANGED_OBJECTS  // if cache coordination is used, only send invalidation messages.
)
public class Employee {
  ...
}



Благодарю, может вы подскажите, можно ли как-то посмотреть берутся ли данные из кэша или нет? Потому как просмотрел не мало доки и пока что не нашел((
...
Рейтинг: 0 / 0
09.08.2018, 10:41
    #39685283
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как очистить кэш eclipselink
Включить логирование sql запросов.

Logging options are provider-specific. You need to know which JPA implementation do you use.

Hibernate (see here):
Код: xml
1.
<property name = "hibernate.show_sql" value = "true" />


EclipseLink (see here):
Код: xml
1.
<property name="eclipselink.logging.level" value="FINE"/>


OpenJPA (see here):
Код: xml
1.
<property name="openjpa.Log" value="DefaultLevel=WARN, Runtime=INFO, Tool=INFO, SQL=TRACE"/>



Недавно разбирался с cache в JPA (Hibernate) смотрел first, second level все работает согласно документации. Думаю что в eclipselink тоже самое иначе всплыло бы уже. По крайней мере те части что в JPA а не implementation specific
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / как очистить кэш eclipselink / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]