【发布时间】:2015-09-13 21:22:34
【问题描述】:
我在 dropwizard 框架中使用休眠。 应用程序的配置:为多个服务器的后端提供负载均衡器。 问题是当我保存新记录时,记录会保存在数据库中。但是当我试图从指向同一个数据库的不同服务器获取记录时,我无法获取新创建的行。它仅存在于创建它的服务器中。 Hibernate 缓存在属性中被标记为 false。 谁能建议我缺少什么?或任何提示。
代码:
保存api:
@Transactional
public ID save(T entity) {
EntityManager em = getEntityManager();
if (em.contains(entity) ) {
em.merge(entity);
} else {
em.persist(entity);
}
em.flush();
return (ID) entity.getId();
}
获取接口:
public T findOne(final ID id) {
EntityManager em = getEntityManager();
T entity = em.find(getEntityClass(), id);
em.flush();
return entity;
}
【问题讨论】:
-
你能展示你代码的相关部分吗?
-
您使用的是哪个版本的 dropwizard 和 hibernate?
标签: database hibernate entitymanager dropwizard hibernate-entitymanager