私は コールバック機能 私はいくつかのコードを実行することができます EntityManagerが起動する前に に JBoss 6.
具体的には、EntityManagerが初期化される前にLiquibaseの変更ログを処理したいと思います。
どんなヒントも大歓迎です! J.
回答:
回答№1は0SpringやAspectJを使っていますか?それはのように聞こえる アスペクトを書くことはまさにあなたが望むものです:
7.2.4.1助言の前に
@Beforeアノテーションを使用するアスペクトでアドバイスが宣言される前に:
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
@Aspect
public class LiquibaseChangelogAspect {
@Before("javax.persistence.EntityManagerFactory.createEntityManager()")
public void processChangelog() {
// ...
}
}
メソッド名を微調整する必要があるかもしれません。 @Before
JBossがプロキシなどを使用している可能性があるため、アノテーションを正確に指定する必要があります。