hibernate-entitymanager
全部标签 我在尝试将Hibernate事务中所做的更改推送到数据库以使DbUnit在我的测试用例中正常工作时遇到问题。似乎DbUnit没有看到Hibernate所做的更改,因为它们尚未在事务结束时提交......而且我不确定如何重组我的测试用例以使其正常工作。这是我过度简化的测试用例来证明我的问题:-@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(locations={"classpath:applicationContext-test.xml"})@TransactionConfiguration(transaction
我正在使用Spring3.1.0.RELEASE和Hibernate4.0.1.Final。如何为我的SessionFactory设置事件监听器?最终,我试图在这个线程--InjectingfieldsviaSpringintoentitiesloadedbyHibernate之后将一个bean注入(inject)到Hibernate实体中。但是,这是失败的,但出现以下异常。我的配置文件看起来像classpath:hibernate.cfg.xml-->com.myco.myproject.domain.Registrationcom.myco.myproject.domain.Rol
我昨天一整天都在阅读关于Hibernate的各种文章/教程,虽然我被它的强大所震撼,但我对它有一个主要的担忧。似乎标准做法是允许Hibernate为您设计/生成您的DB模式,这是一个令我窒息的新概念和可怕概念。从我阅读的教程中,您只需将一个新实体添加到您的hibernate.cfg.xml配置文件,使用@Entity注释您想要的任何POJO,然后瞧-Hibernate创建给你的表。虽然这很酷,但它让我想知道一些场景:如果您已经有一个DB模式,而Hibernate想要为您生成的模式不符合该模式怎么办?如果您有一个疯狂的DBA拒绝在预定义(非Hibernate)模式上让步怎么办?如果您有包
我有一个查询,我要连接两个表ROuteMaster和RouteHalts。当我执行内部连接时,我得到了org.hibernate.hql.ast.QuerySyntaxException:unexpectedtoken:onnearline1,column169[SELECTrm.id,rm.routeCode,rm.startPlaceId,rm.endPlaceId,rm.active,rm.linkedRouteFROMcom.oprs.pojo.routes.RouteMasterrmINNERJOINRouteHaltsrhonrm.id=rh.routeIdWHERErh.
我的Web框架(Play1.2.5)创建了一个EJB3Configuration本地方法,该方法用于创建EntityManagerFactory(source).我正在编写一个脚本,并希望从配置中运行generateSchemaUpdateScript()方法来制作我可以验证并在生产部署中运行的SQL脚本。我遇到的问题是,在构建EntityManagerFactory之后,我无法弄清楚如何访问已使用的Configuration对象或如何生成Configuration对象。 最佳答案 您无法从entitymanagerfactory取
我正在开发一个简单的网络应用程序,它将域模型公开为RESTful资源。我计划使用JPA2(Hibernate)和SpringMVCREST支持。在将Hibernate实体编码为XML/JSON时,如果实体被分离,它将为惰性子关联抛出LazyLoadingException。如果实体仍然附加到HibernateSession,它几乎会加载整个数据库。我尝试使用DozerCustomFieldMapper来确定该属性是否为未加载的惰性HibernateCollection,然后返回NULL。但如果我们有双向关联,Hibernate会急切地加载多对一端,Dozer将尝试复制属性,这将以无限循
我正在尝试使用spring3.2和hibernate4创建sessionFactorybean。为此我使用了以下代码。但问题是buildSessionFactory()已弃用并且建议在javadoc中改用buildSessionFactory(ServiceRegistryserviceRegistry)。但是,我无法理解什么是ServiceRegistry以及如何使用buildSessionFactory(ServiceRegistryserviceRegistry)。@ConfigurationpublicclassAppConfig{...@BeanpublicSessionFa
正如hibernate文档所说,命名查询的目的是将HQL从项目中的不同位置清除到某些xml中的单个位置(在声明性方法的情况下)。这意味着在查询修改但重新加载的情况下不需要重新编译session工厂是必需的,这意味着在大多数情况下服务器会在查询对象被缓存时启动。但是在注释的情况下,我需要在实体级别定义命名查询。所以这里再次编译需要。我的问题是命名查询是否也有助于提高性能。这是我的理解:-1)当我使用命名查询时,只有查询对象缓存在二级缓存中。当我说只是查询对象时,它意味着只是查询语法被缓存而不是查询结果。对吗?如果它是正确的,那么它可能仅在HQL的情况下有用,因为我们可以避免将HQL转换为
我正在将我的Hibernate升级到最新版本。使用旧的HibernateUtil.java我没有遇到任何问题,但是在升级它时,SessionFactory似乎不再关闭了。这是我的新HibernateUtil.java类:importorg.hibernate.HibernateException;importorg.hibernate.cfg.Configuration;importorg.hibernate.SessionFactory;importorg.hibernate.boot.registry.StandardServiceRegistryBuilder;publiccla
我有一个log4j2.xml文件,如下所示。它正在运行,但它正在获取大量Hibernate和GWT日志文件。我怎样才能排除这些包,或者我怎样才能让我的日志文件只包含来self的包层次结构的日志记录? 最佳答案 删除您的“调试”根记录器。然后添加以下记录器,它将仅记录来自给定“some.dummy.package”的日志所以最后你会有 关于java-过滤掉Log4j2文件中的Hibernate日志,我们在StackOverflow上找到一个类似的问题: http