Spring jpa を介して mysql にブール値を正しく追加する際に問題が発生する
P粉883278265
P粉883278265 2023-12-05 16:56:21
0
1
592

そこで、いくつかのオブジェクトを SQL に永続化したいと考えています。これは私のテーブルです:

リーリー

現在、私は JpaRepository を使用する Spring Boot アプリケーションに取り組んでいます。これは私のクラスです。

リーリー

私のリポジトリ クラスは次のようになります:

リーリー

これで、実際にこれに当てはまるコードができました。

最初にコンストラクターを呼び出し、次に標準の .save() メソッドを呼び出します。

リーリー

名前、数、ファイル URL は正しく生成されます。 .save() ステートメントの前にデバッグと評価を行ったので、これを知っています。同じスクリーンショットを添付しました。

しかし、実際に保存を実行すると、この SQL エラーが発生します。いくつかのログも印刷しました。すべての値が null に設定されているようです:

リーリー


P粉883278265
P粉883278265

全員に返信(1)
P粉638343995

問題が解決しました。バインド時にすべてのパラメータが VARCHAR として扱われることがわかりますが、そうではありません。

コード内の別の場所に、コンバータというラベルが付けられています。 @Converter(autoApply= true). このコンバータは VARCHAR フィールドで動作し、すべてのエンティティのすべてのフィールドに自動的に適用されます。これは私の側では意図的ではありませんでした。

自動的に適用されるコンバーターが必要な場合は、@Column アノテーションでさらにプロパティを追加指定することで、一部のフィールドでこのコンバーターをオーバーライドできます。以下は私にとってうまくいった変更です。

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート