org.hibernate.Query.setCacheable()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(8.4k)|赞(0)|评价(0)|浏览(288)

本文整理了Java中org.hibernate.Query.setCacheable方法的一些代码示例,展示了Query.setCacheable的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Query.setCacheable方法的具体详情如下:
包路径:org.hibernate.Query
类名称:Query
方法名:setCacheable

Query.setCacheable介绍

[英]Enable caching of this query result set.
[中]启用此查询结果集的缓存。

代码示例

代码示例来源:origin: gocd/gocd

  1. @Override
  2. public List<Plugin> getAllPlugins() {
  3. return (List<Plugin>) transactionTemplate.execute((TransactionCallback) transactionStatus -> {
  4. Query query = sessionFactory.getCurrentSession().createQuery("FROM " + Plugin.class.getSimpleName());
  5. query.setCacheable(true);
  6. return query.list();
  7. });
  8. }

代码示例来源:origin: hibernate/hibernate-orm

  1. /**
  2. * Call setEntity() on a cacheable query - see FORGE-265
  3. */
  4. public List listEventsOfOrganizer(Person organizer) {
  5. Session session = sessionFactory.getCurrentSession();
  6. session.beginTransaction();
  7. Query query = session.createQuery("from Event ev where ev.organizer = :organizer");
  8. query.setCacheable(true);
  9. query.setEntity("organizer", organizer);
  10. List result = query.list();
  11. session.getTransaction().commit();
  12. return result;
  13. }

代码示例来源:origin: hibernate/hibernate-orm

  1. @Override
  2. protected Object getResults(Session s, boolean isSingleResult) {
  3. Query query = getQuery( s ).setCacheable( getQueryCacheMode() != CacheMode.IGNORE ).setCacheMode( getQueryCacheMode() );
  4. return ( isSingleResult ? query.uniqueResult() : query.list() );
  5. }
  6. }

代码示例来源:origin: hibernate/hibernate-orm

  1. Query q = s.createQuery("from Simple s where s.name=?");
  2. q.setCacheable(true);
  3. q.setString(0, "Simple 1");
  4. assertTrue( q.list().size()==1 );
  5. assertTrue( q.list().size()==1 );
  6. assertTrue( q.list().size()==1 );
  7. q = s.createQuery("from Simple s where s.name=:name");
  8. q.setCacheable(true);
  9. q.setString("name", "Simple 1");
  10. assertTrue( q.list().size()==1 );
  11. simple = (Simple) q.list().get(0);
  12. q.setString("name", "Simple 2");
  13. assertTrue( q.list().size()==0 );
  14. assertTrue( q.list().size()==0 );
  15. q = s.createQuery("from Simple s where s.name=:name");
  16. q.setString("name", "Simple 2");
  17. q.setCacheable(true);
  18. assertTrue( q.list().size()==1 );
  19. assertTrue( q.list().size()==1 );
  20. t = s.beginTransaction();
  21. q = s.createQuery("from Simple s where s.name=?");
  22. q.setCacheable(true);
  23. q.setString(0, "Simple 1");
  24. assertTrue( q.list().size()==0 );

代码示例来源:origin: org.sakaiproject.common/sakai-common-composite-component

  1. public Object doInHibernate(Session session) throws HibernateException, SQLException
  2. {
  3. Query q = session.getNamedQuery(FINDTYPEBYTUPLE);
  4. q.setString(AUTHORITY, authority);
  5. q.setString(DOMAIN, domain);
  6. q.setString(KEYWORD, keyword);
  7. q.setCacheable(cacheFindTypeByTuple);
  8. q.setCacheRegion(Type.class.getCanonicalName());
  9. return q.uniqueResult();
  10. }
  11. };

代码示例来源:origin: org.ow2.bonita/bonita-core

  1. @SuppressWarnings("unchecked")
  2. public Set<ActivityFullInstance<TaskInstance>> getUserTasks(String userId, TaskState taskState) {
  3. Query query = getSession().getNamedQuery("getUserTasksWithState");
  4. query.setCacheable(true);
  5. query.setString("userId", userId);
  6. query.setParameter("state", taskState, taskStateUserType);
  7. Set<ActivityFullInstance<TaskInstance>> result = new HashSet<ActivityFullInstance<TaskInstance>>();
  8. result.addAll(query.list());
  9. return result;
  10. }

代码示例来源:origin: sakaiproject/sakai

  1. public Integer getCountItemFacades(final Long questionPoolId) {
  2. final HibernateCallback<Number> hcb = session -> {
  3. Query q = session.createQuery("select count(ab) from ItemData ab, QuestionPoolItemData qpi where ab.itemId = qpi.itemId and qpi.questionPoolId = :id");
  4. q.setLong("id", questionPoolId);
  5. q.setCacheable(true);
  6. return (Number) q.uniqueResult();
  7. };
  8. return getHibernateTemplate().execute(hcb).intValue();
  9. }

代码示例来源:origin: org.openmobster.core/security

  1. device = (Device)session.createQuery(query).setString(0, identifier).setCacheable(true).uniqueResult();

代码示例来源:origin: at.chrl/chrl-orm

  1. /**
  2. * Create query
  3. *
  4. * @param stmt
  5. * the statement
  6. */
  7. public Query createQuery(String stmt) {
  8. return session.createQuery(stmt).setCacheable(true);
  9. }

代码示例来源:origin: hibernate/hibernate-demos

  1. public Project getProject(long id) {
  2. final Session s = openSession();
  3. s.getTransaction().begin();
  4. final Query q = s.createQuery( "FROM Project WHERE id = :id" );
  5. q.setParameter( "id", id );
  6. q.setCacheable( true );
  7. final Project project = (Project) q.uniqueResult();
  8. s.getTransaction().commit();
  9. return project;
  10. }

代码示例来源:origin: jtalks-org/jcommune

  1. /**
  2. * {@inheritDoc}
  3. */
  4. @Override
  5. public UserContact getContactById(long id) {
  6. return (UserContact) session()
  7. .createQuery("from UserContact u where u.id = ?")
  8. .setCacheable(true)
  9. .setLong(0, id)
  10. .uniqueResult();
  11. }
  12. }

代码示例来源:origin: org.ow2.bonita/bonita-core

  1. public Set<ProcessFullDefinition> getProcesses(String processId, String version) {
  2. final Query query = getSession().getNamedQuery("getProcessFromIdAndVersion");
  3. query.setCacheable(true);
  4. query.setString("processId", processId);
  5. query.setString("version", version);
  6. return getProcessSet(query);
  7. }

代码示例来源:origin: hibernate/hibernate-orm

  1. Query q = s.createQuery("from Simple s where s.name=?");
  2. q.setCacheRegion("foo");
  3. q.setCacheable(true);
  4. q.setString(0, "Simple 1");
  5. assertTrue( q.list().size()==1 );
  6. assertTrue( q.list().size()==1 );
  7. assertTrue( q.list().size()==1 );
  8. q = s.createQuery("from Simple s where s.name=:name");
  9. q.setCacheRegion("foo");
  10. q.setCacheable(true);
  11. q.setString("name", "Simple 1");
  12. assertTrue( q.list().size()==1 );
  13. simple = (Simple) q.list().get(0);
  14. q.setString("name", "Simple 2");
  15. assertTrue( q.list().size()==0 );
  16. assertTrue( q.list().size()==0 );
  17. q = s.createQuery("from Simple s where s.name=?");
  18. q.setCacheRegion("foo");
  19. q.setCacheable(true);
  20. q.setString(0, "Simple 1");
  21. assertTrue( q.list().size()==0 );

代码示例来源:origin: hibernate/hibernate-orm

  1. /**
  2. * Call setEntity() on a cacheable query - see FORGE-265
  3. */
  4. public List listEventsOfOrganizer(Person organizer) {
  5. Session session = sessionFactory.getCurrentSession();
  6. session.beginTransaction();
  7. Query query = session.createQuery("from Event ev where ev.organizer = :organizer");
  8. query.setCacheable(true);
  9. query.setEntity("organizer", organizer);
  10. List result = query.list();
  11. session.getTransaction().commit();
  12. return result;
  13. }

代码示例来源:origin: org.sakaiproject.common/sakai-common-composite-component

  1. public Object doInHibernate(Session session) throws HibernateException, SQLException
  2. {
  3. Query q = session.getNamedQuery(FINDTYPEBYUUID);
  4. q.setString(UUID, uuid);
  5. q.setCacheable(cacheFindTypeByUuid);
  6. q.setCacheRegion(Type.class.getCanonicalName());
  7. return q.uniqueResult();
  8. }
  9. };

代码示例来源:origin: org.ow2.bonita/bonita-core

  1. @SuppressWarnings("unchecked")
  2. public Set<PackageDependency> getPackageDependencies(String className) {
  3. final Query query = getSession().getNamedQuery("getPackageDependencies");
  4. query.setCacheable(true);
  5. query.setString("className", className);
  6. final List<PackageDependency> results = query.list();
  7. if (results != null) {
  8. return new HashSet<PackageDependency>(results);
  9. }
  10. return null;
  11. }

代码示例来源:origin: sakaiproject/sakai

  1. public long getSubPoolSize(final Long poolId) {
  2. final HibernateCallback<Number> hcb = session -> {
  3. Query q = session.createQuery("select count(qpp) from QuestionPoolData qpp where qpp.parentPoolId = :id");
  4. q.setCacheable(true);
  5. q.setLong("id", poolId);
  6. return (Number) q.uniqueResult();
  7. };
  8. return getHibernateTemplate().execute(hcb).longValue();
  9. }

代码示例来源:origin: org.openmobster.core/security

  1. identity = (Identity)session.createQuery(query).setString(0, principal).setCacheable(true).uniqueResult();

代码示例来源:origin: gocd/gocd

  1. public Users allUsers() {
  2. return new Users((List<User>) transactionTemplate.execute((TransactionCallback) transactionStatus -> {
  3. Query query = sessionFactory.getCurrentSession().createQuery("FROM User");
  4. query.setCacheable(true);
  5. return query.list();
  6. }));
  7. }

代码示例来源:origin: jpos/jPOS-EE

  1. private void addRules
  2. (Map<String,Object> ruleMap, Journal journal, List acctHierarchy, int offset)
  3. throws HibernateException
  4. {
  5. Query q = session.createQuery (
  6. "from org.jpos.gl.RuleInfo where journal=:journal and account in (:accts) order by id"
  7. );
  8. q.setParameter ("journal", journal);
  9. q.setParameterList ("accts", acctHierarchy, new LongType());
  10. q.setCacheable (true);
  11. q.setCacheRegion ("rules");
  12. Iterator iter = q.iterate();
  13. while (iter.hasNext()) {
  14. RuleInfo ri = (RuleInfo) iter.next();
  15. RuleEntry k = new RuleEntry (ri, ri.getAccount());
  16. RuleEntry re = (RuleEntry) ruleMap.get (k.getKey());
  17. if (re == null)
  18. ruleMap.put (k.getKey(), re = k);
  19. re.addOffset (offset);
  20. }
  21. }
  22. private void applyRules (GLTransaction txn, Collection rules)

相关文章