0

DB スキーマが特定のテーブル列に null を保持することを禁止している場合、対応するエンティティ クラス プロパティを @org.jetbrains.annotations.NotNull (またはその他の JSR-305 準拠のアノテーション) でマークして、IDEA インスペクション (または他の静的分析ツール)?

このインスペクションを実行しようとすると、@NotNull でマークされたプロパティをクラス初期化子で初期化する必要があることが報告されます。この事実を考えると、私が上で述べたことを達成することは不可能だと思いますか? とにかく、JPAプロバイダーは、初期化されていないプロパティを持つエンティティクラスオブジェクトを作成し、その後DBデータのみで埋めるので、静的分析ツールの観点からは、すべてのプロパティは常にnull可能ですか?

前もって感謝します。

4

1 に答える 1

0

設計意図を明確に表現するために、@NotNullに API で使用します。あなたの場合、ORMはエンティティの作成と組み立てを担当しているため、そのメカニズムを変更する方法は実際にはありません-その仕事をさせて@NotNull、意味のある場所で -s を使用するだけです。

于 2015-03-10T21:11:30.627 に答える