Invalid bound statement
IDEAエラー:Invalid bound statement(not found):comp.test.mapper.UserMapper.selectByPrimary Key(転送:https://www.cnblogs.com/woshimrf/p/5138726.html)
http://blog.csdn.net/z69183787/article/details/48933481;
原因:(参考:http://www.linuxidc.com/Linux/2015-06/118877.htm)
IDEAのMavenプロジェクトでは、デフォルトソースディレクトリのxmlなどのリソースファイルはコンパイル時に一括してclasesフォルダに梱包されるのではなく、そのまま破棄されます.
Eclipseを使用すると、Eclipseのsrcディレクトリの下のxmlなどの資源ファイルがコンパイルされた時に自動的にclasesフォルダに梱包されて出力されます.HibernateとSpringは、設定ファイルをsrcディレクトリの下に置く場合があります.コンパイル後、一つのブロックをclasesフォルダに梱包するため、xmlなどのリソースファイルをソースコードディレクトリの下に置く必要があります.
解決:
方法1:xmlやpropertiesなどのプロファイルをresourceにセットし、mapper.xmlを登録する場所など、プロファイルを取得するコードを変更します.
方法2:mavenにフィルターを加える:
方法3:mybatisの自動代理設定を採用して、mapperファイルとxmlファイルの同名の同梱をして、sql Map.xml(mybatis-config.xml)にmapper自動登録スキャンパッケージを配置する:
方法四:
ディレクトリは以下の通りです
http://blog.csdn.net/z69183787/article/details/48933481;
原因:(参考:http://www.linuxidc.com/Linux/2015-06/118877.htm)
IDEAのMavenプロジェクトでは、デフォルトソースディレクトリのxmlなどのリソースファイルはコンパイル時に一括してclasesフォルダに梱包されるのではなく、そのまま破棄されます.
Eclipseを使用すると、Eclipseのsrcディレクトリの下のxmlなどの資源ファイルがコンパイルされた時に自動的にclasesフォルダに梱包されて出力されます.HibernateとSpringは、設定ファイルをsrcディレクトリの下に置く場合があります.コンパイル後、一つのブロックをclasesフォルダに梱包するため、xmlなどのリソースファイルをソースコードディレクトリの下に置く必要があります.
解決:
方法1:xmlやpropertiesなどのプロファイルをresourceにセットし、mapper.xmlを登録する場所など、プロファイルを取得するコードを変更します.
方法2:mavenにフィルターを加える:
1
2
3
4 src/main/resources
5
6 **/*.properties
7 **/*.xml
8
9 true
10
11
12 src/main/java
13
14 **/*.properties
15 **/*.xml
16
17 true
18
19
方法3:mybatisの自動代理設定を採用して、mapperファイルとxmlファイルの同名の同梱をして、sql Map.xml(mybatis-config.xml)にmapper自動登録スキャンパッケージを配置する:
1
2
3
4
5
6
10
11
12
17
18
19
方法四:
ディレクトリは以下の通りです
yml
mybatis:
mapperLocations: classpath:sqlmap/*.xml
: xml