具有特定于供应商的属性的JPA find()方法

时间:2014-08-07 10:21:58

标签: java hibernate jpa

我是JPA的新手,我最近开始使用它。我对JPA 2.0中引入的以下方法有疑问 -

 public <T> T find(Class<T> entityClass, Object primaryKey, 
                  Map<String, Object> properties); 

文档说明,使用供应商指定的属性按主键查找。

但是我无法理解这些供应商特定的属性是什么,在什么情况下应该使用这个重载的find()方法。

任何人都可以用一个合适的例子向我解释。提前谢谢。

1 个答案:

答案 0 :(得分:3)

查看here,它是Hibernate的查询提示列表。对于Eclipselink,您可以使用these提示。

您可以在属性映射中使用提示,如下所示:

Map<String, Object> map = new HashMap<>();
map.put("org.hibernate.cacheMode", CacheMode.REFRESH);
MyClass myClass = em.find(MyClass.class, 1L, map);