jjzjj

PrePersist

全部标签

php - 我可以在 Sonata Admin Controller 中使用 prePersist/preUpdate 来持久化多个对象吗?

我有这个Alias实体:useGedmo\Timestampable\Traits\TimestampableEntity;classAlias{useIdentifierAutogeneratedTrait;useTimestampableEntity;useActiveTrait;/***@varstring*@ORM\Column(type="string",length=150)*/private$name;/***Commandassociatedtothealias.**@varCommand[]*@ORM\ManyToMany(targetEntity="Command"

php - 原则 2 - 从实体外部禁用 PrePersist

我正在尝试从Doctrine2中的实体外部禁用实体事件。每次我们将新记录插入表中时,需要运行的文件操作很少,这些操作已在带有prePersist注释的方法中实现.但是,作为测试的一部分,我还需要运行一些数据装置并跳过文件操作部分。基本上我问的是是否可以通过实体管理器禁用所有prePersist事件而不更改实体中的任何内容。 最佳答案 如果您可以完全删除生命周期回调,那么您可以手动清空回调。这在动态夹具生成的情况下很有用。你只需这样做:$this->em->getClassMetadata(get_class($object))->s

java - Spring Data REST - @PrePersist 和@HandleBeforeCreate 之间的区别?

我在JPA映射上使用SpringDataRest。JPA提供了@PrePersist注解,用于在数据库中实体持久化之前调用的方法。SpringDataRest为捕获实体创建事件时要调用的方法提供了@HandleBeforeCreate注解。这对我来说似乎相当。什么时候应该使用一个,什么时候应该使用另一个? 最佳答案 @HandleBeforeCreate仅在REST请求传入时调用,但在实体生命周期期间调用@PrePersist。因此,如果您的调用路径不是通过REST(例如通过直接调用实体管理器或由于JPAimpl的内部级联操作),您

java - @PostPersist 未调用...@PrePersist 是...为什么?

我有一个JPA@Entity类,它使用@PrePersist已经有一段时间了。今天我想在需要该实体ID的地方添加一些功能。此ID由数据库中的HIBERNATE_SEQUENCE持久化期间生成。它通常在em.persist(entity)之后设置。由于某些未知原因,@PrePersist方法被触发...而@PostPersist根本不会触发:@EntitypublicclassMyEntity{@PrePersistprotectedvoidonCreate(){System.out.println("ExtendedEntity.onCreate()");}@PostPersistpr

mongodb - @PrePersist EventListener spring-data-mongo 的替代品

我创建了一个Repository来自动增加@Document的id但现在我需要显式调用@Idsetter方法来设置新的ID。有没有一种方法可以使用JPA@PrePersist中的监听器来做到这一点@RepositoryinterfaceUserRepository:MongoRepository,UserRepositoryCustominterfaceUserRepositoryCustom{funsave(user:User):User}classUserRepositoryImpl(privatevalmongoOperations:MongoOperations,private

java - @PrePersist 正在被调用并修改实体,但没有写入数据库

我正在使用Hibernate和MySQL在SpringMVC中开发一个应用程序,但我遇到了一个问题。我正在尝试使用@PrePersist注释在我的Java实体中填充我最后修改的字段。我已经调试了代码,正在调用方法并设置值。但是,数据库引发了空冲突,因为它没有写出@PrePersist方法添加的值。有谁知道如何解决这个问题,将数据写入数据库?仅供引用,除了更改日期外,我还想使用这些JPA注释来执行某些业务逻辑或使用与注释类似的东西。代码:@Entity@Table(name="account")publicclassAccount{@Column(name="modified_on")@

java - hibernate/JPA 中的 @PreUpdate 和 @Prepersist(使用 session )

我遇到了一个向现有项目添加修复程序的阻止程序。主要问题是我想使用@Prepersist和@PreUpdate在POJO照顾LastModified字段(插入和更新)使用带有session的JPA的hibernate实现。原因?:由于需要使用liquibase1.9.5,因此需要进行该更改。我知道(因为我以前遇到过这个问题)liquibase将时间戳转换为具有默认current_timestamp的日期时间,这对于mysql数据库来说太糟糕了。所以我需要一种方法在代码中而不是在数据库中设置此设置,以便我可以安全地将时间戳字段更改为datetime。然后liquibase很高兴,我很高兴。

java - hibernate/JPA 中的 @PreUpdate 和 @Prepersist(使用 session )

我遇到了一个向现有项目添加修复程序的阻止程序。主要问题是我想使用@Prepersist和@PreUpdate在POJO照顾LastModified字段(插入和更新)使用带有session的JPA的hibernate实现。原因?:由于需要使用liquibase1.9.5,因此需要进行该更改。我知道(因为我以前遇到过这个问题)liquibase将时间戳转换为具有默认current_timestamp的日期时间,这对于mysql数据库来说太糟糕了。所以我需要一种方法在代码中而不是在数据库中设置此设置,以便我可以安全地将时间戳字段更改为datetime。然后liquibase很高兴,我很高兴。

java - 如何在不使用 JPA 的情况下对 MongoDB @prepersist @preupdate 进行 Spring-data

我想学习,是否可以在spring-data-mongodb文档中使用@prepersist/@preupdate之类的注释,我的意思是是否可以在保存之前或更新之前进行修改?我期待springdatamongodb的文档BeforeConvertListener有一个监听器,但我想在没有监听器的情况下使用,在@document对象内只需为属性添加注释。有可能吗? 最佳答案 我找到了解决方案,但与我的问题有关。我的问题是我需要预先保存或预先更新修改日期、插入日期。所以spring-data可以为它们提供注解:@CreatedDate->

java - 如何在不使用 JPA 的情况下对 MongoDB @prepersist @preupdate 进行 Spring-data

我想学习,是否可以在spring-data-mongodb文档中使用@prepersist/@preupdate之类的注释,我的意思是是否可以在保存之前或更新之前进行修改?我期待springdatamongodb的文档BeforeConvertListener有一个监听器,但我想在没有监听器的情况下使用,在@document对象内只需为属性添加注释。有可能吗? 最佳答案 我找到了解决方案,但与我的问题有关。我的问题是我需要预先保存或预先更新修改日期、插入日期。所以spring-data可以为它们提供注解:@CreatedDate->
12