Mybatis-plus のバインディング エラーにより、BindingException: Invalid binding state の解決が求められます。
一般的な理由は、Mapper インターフェースの定義と XML ファイルが一致していないため、パッケージ名、名前空間、関数名などが一致するかどうかを確認する必要があります。
上記の手順を確認すると、pom.xml ファイルが異常にチェックされます。
一般的な理由は、Mapper インターフェースの定義と XML ファイルが一致していないため、パッケージ名、名前空間、関数名などが一致するかどうかを確認する必要があります。
以下の手順を順に実行していきます。
1. XMLファイルのパッケージ名とインターフェースに対応するパッケージ名が1対1に対応しているか確認します。
2. XMLファイルの名前空間がXMLファイルのパッケージ名に対応しているかどうかを一つ一つ確認します
3. 関数名が対応できるか確認します。
4. XML ファイル内の中国語のコメントを削除します。
5. xml ファイルにスペースまたは空行を追加して保存してください
上記の手順をチェックすると、pom.xml ファイルのチェックが異常になります。
以下の内容が追加されているか確認してください
注: IDEA で開発する場合、*Mapper.xml がパッケージ化時にクラス出力ディレクトリ内のマッパー クラス パッケージに自動的にコピーされない場合は、pom ファイルに設定ファイルをロードする mybatis の設定を追加する必要があります。
<build>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*Mapper.xml</include>
</includes>
</resource>
<resource>
<ディレクトリ>src/main/resources</directory>
<includes>
<include>**</include>
</includes>
</resource>
</resources>
</build>
これは、次のコードが application.yml に追加されているためです (独自のパスに従って変更)。
mybatis-plus.mapper-locations=classpath:/com/example/computer/mapper/*Mapper.xml
同時に、xxxMapper ファイルに @Mapper と @Repository を追加する必要があります。
xxxApplication スタートアップ クラスの下に、以下を追加します。
@MapperScan("com.example.computer.mapper")
注: 括弧内のパスはマッパーのパスです。