Vous pouvez utiliser la méthode preload de la classeObjectGridHibernateCacheProvider pour précharger les données dans le cache d'ObjectGrid pour une classe d'entité.
EntityManagerFactory emf = Persistence.createEntityManagerFactory("testPU");
ObjectGridHibernateCacheProvider.preload("objectGridName", emf, TargetEntity.class, 100, 100);
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
@Entity
@Cache(usage=CacheConcurrencyStrategy.TRANSACTIONAL)
public class HibernateCacheTest { ... }
Vous pouvez remplacer cette valeur par défaut en définissant l'élément shared-cache-mode dans le fichier persistence.xml ou en utilisant la propriété javax.persistence.sharedCache.mode.org.hibernate.cfg.Configuration cfg = new Configuration();
// utilisez la méthode de configuration addResource, addClass et setProperty pour préparer
// la configuration requise pour créer SessionFactor
SessionFactory sessionFactory= cfg.buildSessionFactory();
ObjectGridHibernateCacheProvider.preload("objectGridName", sessionFactory,
TargetEntity.class, 100, 100);