草庐IT

entityManager

全部标签

php - 如何正确获取 Symfony 3 中的 EntityManager?

我正在使用当前版本的Symfony(3.2.3)和DoctrineORM(2.5.6),我仍在努力思考如何处理getEntityManager()的弃用和相关方法正确。例如,当前的documentation声明这是创建查询构建器实例的方法:$repository=$this->getDoctrine()->getRepository('AppBundle:Product');$queryBuilder=$repository->createQueryBuilder('p')但在我看来(我的IDE似乎同意),getRepository()是类型提示以返回ObjectRepository的

php - 通过服务将 Symfony EntityManager 注入(inject)到表单类型中

我需要根据实体是否是最新发布的版本来修改表单中的某些字段(标签和类)。所以我需要能够将实体管理器注入(inject)到我的formType中,以便在事件监听器中我可以将当​​前版本与实体的已发布版本进行比较。但我什至无法将entityManager放入__construct()开始。也许还有更好的方法来实现我的大目标(例如修改twig模板中的表单),但我还需要了解如何进行这种基本的依赖注入(inject)。我想如果我在我的服务中声明它(就像文档描述的基本ServiceContainer和特别是ConstructorInjection方法),它将作为我的构造中的参数可用。但是当我这样做时

java - jpa2 使用 guice 重用 entityManager

我有一个网络应用程序有一些奇怪的行为,我无法真正理解。我的问题的核心是我的其余端点返回的值中存在不一致的行为。当我启动我的应用程序时,每次我调用此端点时,我的查询都会返回相同的值。当我更新一个实体时,我的实体管理器开始表现异常。现在我的查询开始返回不同的结果。有一次它返回旧值而不是数据库中的值,或者我的结果列表包含代理而不是对象(混合)。我已验证我的@transaction方法放置正确,并且在我的调试堆栈中我看到事务拦截器和实体管理器是根据对后端的请求创建的(因此没有guice持久性过滤器)我的感觉表明问题出在session上下文中。我有一种感觉(但我无法真正理解)它在多个请求中重用了

java - JSF2 : Open Session in View with EJBs?

在JSF2应用程序中讨论OpenSessionInViewPattern有意义吗?我的应用程序具有调用业务服务EJB的JSF2托管Bean,这些EJB执行所有与数据库相关的工作(有一个DAO层,但现在这并不重要)。拥有OSIV模式意味着托管Bean必须以某种方式确保底层session已打开。我也在使用JPA。 最佳答案 从理论上讲,问题是完全相同的:实体在离开EJB时将变得分离,除非有什么东西使EntityManager的范围保持打开状态。(这里有一篇关于该主题的精彩帖子:JPAimplementationpatterns:Lazy

java - JPA EntityManager persist() 导致对象出现分离,即使抛出错误

您好,我有一个具有以下功能的简单DAO。publicelementcreateElement(Elemente){em.persist(e);em.flush();returne;}实体表对(type,value)对有唯一约束,我在下面进行测试:publicvoidtestCreateElement()throwsDataAccessException{//StartwithemptyElementtableElemente=newElement();e.setType(myType.OTHER);e.setValue("1");dao.createElement(e);e=newEl

java - Hibernate 5 不能正确处理 LocalDate

我们正在将Hibernate(5.0.2)代码迁移到Java8,这还涉及从java.util.Date到java.time.LocalDate的转换(解决与Java7中的日期处理相关的问题)。我遇到的问题之一是Hibernate如何处理我们用作“零日期”的特殊值,即0001-01-01。属性声明如下:@NotNull@Column(name="START_DATE",nullable=false)privateLocalDatestartDate;该值在数据库中存储为0001-01-01,但是当它被Hibernate加载时它突然变成0000-12-29。我假设发生这种情况是因为Hibe

java - 可以将注入(inject)的 EntityManagers 传递给 EJB bean 的帮助类并使用它吗?

我们有一些JavaEE5无状态EJBbean,它将注入(inject)的EntityManager传递给它的助手。这样安全吗?到目前为止它一直运行良好,但我发现一些Oracle文档声明它的EntityManager实现是线程安全的。现在我想知道我们直到现在才没有问题的原因是否只是因为我们使用的实现恰好是线程安全的(我们使用Oracle)。@StatelessclassSomeBean{@PersistenceContextprivateEntityManagerem;privateSomeHelperhelper;@PostConstructpublicvoidinit(){helpe

java - JPA 如何识别两个具有相同名称但位于不同包中的类?

我的项目使用JPA和Hibernate。我有两个具有相同名称但在不同包中的类。它们是:@Entity(name="X_USER")@Table(name="X_USER")publicclassUser{和:@Entity@Table(name="Y_USER")publicclassUser{我正在创建一个搜索查询:.getSimpleName()但它不起作用,因为它们的简单名称相同。我将其更改为.getName()。但是,它仍然混淆返回哪个User。编辑:我有:SELECT_BY_PROPERTY_QUERY="SELECTpFROM:CLASS:pWHEREp.:PROPNAME

java - Java EE 7 的核心接口(interface)(EntityManager 等)能否扩展 AutoCloseable?

我想知道,会吗JavaEE7's核心接口(interface)扩展AutoCloseable或不。(我所说的核心接口(interface)主要是指EntityManager等,但我不确定是否还有其他接口(interface)或类可能会自动关闭。)我认为他们应该,这是我假设的基础。Java6'sConnection甚至不扩展Closeable,然而Java7'sConnection扩展AutoCloseable(就像java.sql包中的其他几个接口(interface)一样)。EntityManager之类的接口(interface)是否可以扩展AutoCloseable以使其能够很好

java - Artifact 丢失 : org. hibernate :hibernate-entitymanager:jar:3. 3.2.ga

我对Spring和Maven比较陌生,几个月来第一次重新访问它们。当我尝试从thistutorial运行代码时,我在pom.xml中遇到以下错误:Missingartifact:org.hibernate:hibernate-entitymanager:jar:3.3.2.ga这是否意味着我必须下载并安装一个额外的jar?我很确定我用spring下载了hibernate,并且当从tomcat服务器上的eclipse启动时,spring宠物诊所示例应用程序在我的系统上运行良好这一事实支持了这一点。我已通过谷歌搜索此错误消息,并尝试了很多建议,但它们都没有解决我机器上的问题。我怎样才能克服