java - 如何在使用 hibernate 模板查询数据库的 EJB bean 中设置缓存?

标签 java hibernate caching ejb

我正在从我的 EJB Bean 查询数据库,它是 DAO,我的查询看起来像:

public List findDirectories()
{
  allDirectories = getHibernateTemplate().find("from " + Directory.class.getName() +
        " d order by upper(d.name)";);
  return allDirectories;
}

我想缓存这个结果,我该怎么做,有没有我可以引用的例子。 我想做的就是在我的 EBJ Bean 中缓存上述查询的结果集,这样下次当页面刷新时,我就会从缓存中获取结果,而不是从数据库中获取结果。

更新:我正在使用旧版本的 EJB,因此可以使用 EJB3很酷的功能

最佳答案

这里的总体思路是使用无状态 session EJB 来缓存和管理不经常更改的数据。如果数据出乎意料地发生变化,则偶尔更新 EJB。

Java EE 6 提供了一种略有不同的技术,单例 bean:http://java.sun.com/developer/technicalArticles/JavaEE/JavaEE6Overview_Part3.html .

关于java - 如何在使用 hibernate 模板查询数据库的 EJB bean 中设置缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9069756/

相关文章:

hibernate - 如何使用 Spring Data JPA 和 Hibernate 执行 H2 存储过程?

java - 在 java 中使用 Hibernate 4.0.1 + Spring 3.2.5 时出现错误

node.js - 在centos 6.4和nginx上将cakephp 2.4与redis连接

java - org.springframework.beans.factory.NoSuchBeanDefinitionException : No bean named 'transactionManager' is defined @Spring + JPA

mongodb - Web 缓存策略

android - 如何在 Android 上将 Google Drive 与 Picasso 集成?

java - 计数器无法解析为类型

java - Android HttpURLConnection接收HTTP 301响应代码

java - Jersey UniformInterfaceException 试图代理到 REST POST 服务

java - Spring MVC,如何经常轮询服务器的最佳实践