Mapper SQL ステートメント フィールドとエンティティ クラス属性名の関係は何ですか?

Mapper SQL ステートメント フィールドとエンティティ クラス属性名の関係は何ですか?

背景:

1. データベースに通知テーブルがある

あなたは見ることができます

  • gmt_create、
  • 通知者名、
  • 外側のタイトル

これら 3 つのフィールドには下線が引かれています。

2. このテーブルに対応するエンティティクラスは

パブリッククラス通知{
  プライベートな Long ID;
  プライベート Long 通知者;
  プライベートロングレシーバー。
  プライベート Long outerId;
  プライベート整数型;
  プライベート Long gmtCreate;
  プライベート整数ステータス。
  プライベート文字列notifierName;
  プライベート文字列outerTitle;
}

実際のJavaコードを書くときはキャメルケースを使用する

application.propertiesでキャメルケースマッピングが有効になっているかどうかを確認します。

#キャメルケースマッピング
mybatis.configuration.map-underscore-to-camel-case=true

3. Mapperに挿入文がある

//0.通知を挿入する
@Insert("質問 (title,description,gmt_create,gmt_modified,creator,tag) に値 (#{title},#{description},#{gmtCreate},#{gmtModified},#{creator},#{tag}) を挿入")
void createQuestion(質問 質問);

結論: プレースホルダを実行する場合、#{} の内容は gmtCreate にする必要があります。

書き込む際には注意してください。gmt_create と書くとエラーが発生する可能性があります。

There is no getter for property named 'gmt_create' in 'class com.example.com

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • MyBatisはSqlMapperを使用してSQLを直接実行します
  • MapperScannerConfigurerのsqlSessionFactoryインジェクションメソッドの詳細な説明
  • Mybatis での SqlMapper 構成の拡張と適用の詳細な紹介 (1)
  • XSD を使用して Mybatis SqlMapper 構成ファイルを検証する方法 (2)
  • XSD を使用して Mybatis SqlMapper 構成ファイルを検証する方法 (1)
  • MyBatis の getMapper() インターフェース、resultMap タグ、エイリアス、SQL 列の可能な限りの抽出、動的操作の詳細な説明
  • MyBatis MapperProvider MessageFormat スプライシング バッチ SQL ステートメントの実行時のエラーの分析と解決

<<:  WebプロジェクトのDockerデプロイメントの実装

>>:  Vueはel-tableを使用して列と行を動的に結合します

推薦する

Docker 接続 MongoDB 実装プロセスとコード例

コンテナが起動した後まず管理者にログインして新しいユーザーを作成してください $ docker ex...

HTML の入力の readonly 属性と disabled 属性の違いについて簡単に説明します。

「読み取り専用」と「無効」はどちらも、ユーザーがフォーム フィールドの内容を変更できないようにしま...

Vue の要素カレンダー コンポーネントを使用したサンプル コード

まず効果図を見てみましょう: 完全なコードは添付されています <テンプレート> <...

JSONデータをHTMLで表示する方法

背景:場合によっては、json データをページに直接表示する必要があります (たとえば、インターフェ...

Tomcat でのコネクタ構成

JBoss は Tomcat を Web コンテナとして使用するため、JBoss の Web コンテ...

jQuery+swiper コンポーネントはタイムラインのスライド年タブ切り替え効果を実現します

結果: 実装コード: スワイパーコンポーネントと一緒に使用する必要がありますSwiper 基本デモア...

CSSフロートの特性についての簡単な説明

この記事では、CSS フロートの特徴を紹介します。皆さんと共有し、自分用のメモとして残したいと思いま...

デザインにおけるユーザーエクスペリエンスの背後にある8つのユーザー本能について話す

編集者注: この記事は、Teambition チームの @娄昊川 が寄稿したものです。Teambit...

MySQL は正常に起動するがポートをリッスンしない場合の解決策

問題の説明MySQL が正常に起動しました。以下に示すように、 ps -ef |grep mysql...

Reactにおけるフックの一般的な使用法

目次1. フックとは何ですか? 2. フックはなぜ現れるのでしょうか? 3. よく使われるフックは何...

MySQL チュートリアル: サブクエリの例の詳細な説明

目次1. サブクエリとは何ですか? 2. サブクエリはどこに表示されますか? 3. Whereサブク...

Linux のリンク解除機能とファイルの削除方法

1. リンク解除機能ハード リンクの場合、unlink はディレクトリ エントリを削除し、inode...

Docker コンテナのログを表示およびクリーンアップする方法 (テスト済みで効果的)

1. 問題Docker コンテナのログにより、ホストのディスク領域がいっぱいになりました。 doc...

XHTML チュートリアル、XHTML の基礎を簡単に紹介します

<br />この記事では、XHTMLとXHTMLの基礎知識について簡単に紹介します。 X...

JSキャンバスは描画ボードと署名ボードの機能を実現します

この記事では、お絵かきボード/サインボード機能を実現するためのJSキャンバスの具体的なコードを参考ま...