この規則は、persistence.xml ファイルに定義されているパーシスタンス・ユニット名とフィールド名が等しい特定の JPA PeristenceContext アノテーションまたは PersistenceUnit アノテーションを検出します。
この規則では、persistence.xml ファイルへのアクセスが必要になる場合があります。このファイルは META-INF フォルダーになければなりません。 以下の条件によって規則が起動します。
- マーカー・アノテーション:
- アノテーションがフィールド・レベルで定義されている。
- フィールド名が persistence.xml ファイルで定義されたパーシスタンス・ユニット名と等しい。
- 通常のアノテーション:
- アノテーションに属性が含まれていません。
name
- 注釈に以下が含まれている
unitName
、ただし以下を含まない
name
- このアノテーションに「name」または「unitName」が含まれなくて、フィールドで宣言されます。
フィールド名が
persistence.xmlファイルで定義されているパーシスタンス・ユニット名と同じです
自動修正では、属性
unitName
または
name
JPA の PeristenceContext アノテーションまたは PersistenceUnit アノテーションに追加します。
例:
- PersistenceContext
@PersistenceContext
EntityManager myPersistenceContext;
- myPersistenceUnit、 persistenceUnit。 META-INF/persistence.xml ファイルで:
@PersistenceContext(unitName = "myPersistenceUnit", name = "myPersistenceUnit" )
EntityManager
myPersistenceContext;
- PersistenceUnit
@PersistenceUnit
EntityManagerFactory
myPersistenceUnit;
- myPersistenceUnit、 persistenceUnit。 META-INF/persistence.xml ファイルで:
@PersistenceUnit(unitName = "myPersistenceUnit", name = "myPersistenceUnit" )
EntityManagerFactory
myPersistenceUnit;
- PersistenceUnit
@PersistenceUnit(unitName="someName")
EntityManager
myPersistenceUnit;
- 自動修正では、このコードを次のように変更する:
@PersistenceUnit(unitName = "someName", name = "someName" )
EntityManager
myPersistenceUnit;