我有一个数据库调用,它在Oracle中,我使用Spring数据JPA。
我有一个函数,它每次在循环中都利用这个数据库调用来检索结果。
现在我的问题是大多数时候参数值的组合都在重复。如何避免这种情况,以及是否有一种方法可以在没有任何缓存机制的情况下临时存储给定的组合集和相应的结果集。
Java 8或spring数据JPA本身运气好吗?。
您有各种选择。
-
如果您使用的是Hibernate,您可以使用它的查询缓存:https://vladmihalcea.com/how-does-hibernate-query-cache-work/我不确定EclipseLink是否有类似的功能。
-
您可以使用Springs缓存设施。https://spring.io/guides/gs/caching/
-
当然,您可以通过使用适当的
equals
和hashCode
实现将所有参数组装到一个对象中,并将结果存储在HashMap
中,从而发挥自己的作用