public interface UserRepository extends CrudRepository<User, Long> {
@Override
@CacheEvict("user")
<S extends User> S save(S entity);
@Cacheable("user")
User findByUsername(String username);
}
@NoRepositoryBean
public interface BaseRepository<T, ID extends Serializable> extends
JpaRepository<T, ID> {
@CacheEvict
<S extends User> S save(S entity);
@Cacheble
T findOne(ID id);
}
@Repository
@CacheConfig("user")
public interface UserRepository extends BaseRepository<User, Integer> {
// when I calling findOne/save method from UserRepository, it should
// caching the methods based on the CacheConfig name defined in the
// child class.
}
我已经问了谷歌先生几天,但没有找到任何合适的解决方案。我希望有人能在这里帮助我。很抱歉,如果我的问题不清楚或遗漏了一些东西,因为这是我第一次在这里发帖。谢谢!
我假设您已经设置了所需的配置,并且您发布的堆栈跟踪是问题所在。那我们来挖吧。
我看到的问题有两个:
>
java.lang.IllegalStateException:无法解析缓存,每个缓存操作至少应提供一个缓存。
示例:
@Cacheable(value = "usersCache", key = "#username") User findByUsername(String username);
注意:确保用户名是唯一的,因为缓存键必须是唯一的。
您可以阅读更多Spring cache注释:一些技巧和技巧
我需要使用spring@Cacheable注释缓存对MongoDB的调用: 不幸的是,使用@Cacheable注释接口中的任何方法都会导致以下异常: 我正在寻找一种方法来缓存对DB的调用(这相当昂贵)。有什么想法吗?
我使用apache ignite缓存作为数据存储。想知道是否有方法从客户端对大型数据集合进行分页。我不需要或希望数百万的记录从服务器转移到我的网络/移动客户端。 这是一个有效的方法吗? 我看过使用游标,但API仅限于迭代器...
问题内容: 我需要在应用程序中缓存一些数据,并且我正在考虑使用Ehcache。我有几个问题: 我是否需要其他服务器进行Ehcache? 我是否需要其他客户端来使用Ehcache? Ehcache如何与多个实例一起使用?甚至可以使用Ehcache创建类似共享缓存的内容吗? 问题答案: 我是否需要其他服务器进行Ehcache? 您可以在独立模式下使用Ehcache。在这种拓扑中,缓存数据保存在应用程序
我创建了一个简单的3实体数据模型,当试图持久化数据时,它不起作用。下面是实体及其id类,server: 服务: 容器: 创建的数据库似乎正常:
我一直在hibernate中使用Spring数据,我想知道避免代码浪费的最佳类组织是什么。这是我的实际结构: 然后我使用这个接口 因此我实现了它 公共类DatabaseServicesImpl实现DatabaseServices{ }但我得到了这个例外
本文向大家介绍java使用hashMap缓存保存数据的方法,包括了java使用hashMap缓存保存数据的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了java使用hashMap缓存保存数据的方法。分享给大家供大家参考,具体如下: 更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇