Mybatis mysqlの削除操作では、最初のデータメソッドのみを削除できます。

Mybatis mysqlの削除操作では、最初のデータメソッドのみを削除できます。

バグ

図のように、削除文とパラメータをデータベースにコピーして実行し、2つのデータを削除しようとしたのですが、バックグラウンド実行では1つのデータしか削除されませんでした。当時は戸惑いました。

 原因を分析する

原因を分析する

図に示すように、正しいパラメータ値は次のようになります。賢い学生は何が間違っているかわかるはずです。

問題を解決する

 問題を解決する

最初のコードは投稿しません。バグを解決するためのコードを直接投稿します。

Mybatisのコード

<!-- 一括削除 -->
  <削除 id="deleteByIds" パラメータタイプ="int[]">
     <![CDATA[
    p_customerから削除
    顧客IDが
    ]]>
    <foreach collection="array" item="arr" index="no" open="("
      セパレーター="," 閉じる=")">
      #{arr}
    </foreach>
  </削除>

コントローラ内のコード

/**
   * 削除と一括削除 */
  @RequestMapping(値 = "/del"、メソッド = RequestMethod.POST、生成 = { MediaType.APPLICATION_JSON_VALUE })
  パブリックResponseEntity<PCustomerVo> delete(@RequestParam String customerId) 例外をスローします {
    // 一括削除の ID を取得し、最後の "," を削除します
    顧客ID = 顧客ID.substring(0, 顧客ID.length()-1);
    文字列[] strarr=顧客ID.split(",");
    int[] arr = 新しい int[strarr.length];
    for(int i=0;i<strarr.length;i++){
      arr[i] = Integer.parseInt(str[i]);
    }
    pcustomerService.deletes(arr);
    新しいResponseEntity<>(HttpStatus.OK)を返します。
  }

要約する

以上が私がご紹介した内容です。mybatis mysql delete 操作では、最初のデータのみを削除できます。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Mybatis が 1 対多の関連クエリで 1 つのデータのみを表示する問題を解決する
  • mybatis plus ページングクエリにエントリ数があり、合計とページが両方ともゼロであるという問題を解決します
  • OracleとMybatisを組み合わせて表のトップ10データを実現
  • レコード数を照会するためのMybatisサンプルコード
  • クエリ数を制限するためのMybatis RowBounds実装コード
  • Mybatisバッチ挿入は成功した例の数を返します

<<:  Linux サービス管理の 2 つの方法、service と systemctl の詳細な説明

>>:  Vue プロジェクトは左スワイプ削除機能を実装します (完全なコード)

推薦する

システムメンテナンスページにリダイレクトするように nginx を設定する

先週末、兄弟プロジェクトはより良いサービスを提供するためにサーバーを拡張する準備をしていました。兄弟...

CSS3 ボタン境界アニメーションの実装

まず効果を見てみましょう: html <a href="#"> &l...

CSSボックスの表示/非表示とトップレイヤーの実装コード

.imgbox{ 幅: 1200ピクセル; 高さ: 612px; 右マージン: 自動; 左マージン...

HTML は CSS スタイルと JS スクリプトを動的に読み込みます。例

1. スクリプトを動的に読み込むウェブサイトの需要が高まるにつれて、スクリプトの需要も徐々に増加しま...

MySQL水平および垂直テーブル変換操作の実装方法

この記事では、例を使用して、MySQL の水平テーブルと垂直テーブル間の変換操作を実装する方法を説明...

HTML ウェブページ作成のための 8 つの強力なテクニック

<br />作業を簡単に完了できる Web ページ作成ツールは数多くありますが、HTML...

MySQL 半同期レプリケーションの原理構成と導入の詳細な説明

環境の紹介: Ubuntu Server 16.04.2+MySQL 5.7.17 コミュニティ サ...

JavaScript のショートカットのヒント

目次1. 配列を結合する2. 配列をマージする(最初に) 3. 配列の複製4. 構造化分解割り当て5...

仮想マシンに Linux rhel7.3 オペレーティング システムをインストールする (具体的な手順)

仮想化ソフトウェアをインストールする仮想マシンにオペレーティング システムをインストールする前に、ホ...

Nuxt.jsプロジェクトのDockerデプロイメントの実装

Docker 公式ドキュメント: https://docs.docker.com/ Docker は...

CSS3はトランジション効果を実現するためにtransitionプロパティを使用する。

物件の詳細な説明transition 属性の目的は、一部の CSS プロパティ (背景など) をスム...

Docker がデータベースのデプロイに適さない 7 つの理由のまとめ

Docker は過去 2 年間で非常に人気が高まっています。開発者はすべてのアプリケーションとソフト...

Vue3 でマークダウン エディター コンポーネントを使用する方法

目次インストールコンポーネントのインポート基本的な使い方保存したマークダウンまたは HTML テキス...

node.js が大規模プロジェクトに適さない理由

目次序文1. アプリケーションコンポーネント2. アプリケーションの種類3. アプリケーションサービ...

CentOS仮想マシンの時刻を変更する方法

上はシステム時間、下はハードウェア時間です。ここでは変更を加えているので、同じくらいの速さになってい...