問題タブ [spring-mybatis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - インターフェイスと xml マッパー ファイルを同じパッケージに入れ、同じ名前にする必要があるのはなぜですか?
今日はSpring Bootを使った例、Spring-MyBatisの次にデータアクセス通信にMyBatisを使った例を準備していました。関連するプロジェクト構成は次のとおりです(mavenを使用):
ファイルの関連コンテンツ:
カテゴリDao.java:
CategoryMapper.xml:
次に、この dao のインスタンスを (テスト目的で) リクエスト コントローラーに次のように挿入します。
プロジェクトを実行し、実行をテストしてcurl localhost:8080/category/all
から、JSON 形式で結果が表示されることを期待していましたが、代わりに次の例外が発生しました。
この原因がわかりません。インターフェイスがあり、と一致CategoryDao
する適切なメソッドがあります。これでしばらく遊んだ後、dao インターフェイスの名前を に変更し、CategoryMapper.xml の名前空間を更新しました。これを行った後、すべてが正常に機能しました。また、クラスとxmlに同じ名前を付けた後、daoクラスとxmlマッパーを別のパッケージに移動し(まだ両方に同じ名前を使用しています:CategoryMapper.)、xmlファイルの名前空間を更新しましたが、同じ例外が発生しました、dao インターフェイスのパッケージの名前を表示するようにメッセージが更新されています。しかし、もう一度、両方のファイルを同じパッケージに移動すると、すべてが再び機能しました。getAllCategories
<select id="getAllCategories">
CategoryMapper
私の質問は、なぜ MyBatis はインターフェイスと xml マッパー ファイルが同じ名前で、同じパッケージにある必要があるのですか? これは MyBatis の設計ですか、それとも Spring MyBatis の問題ですか?
spring - MyBatis で Spring を使用してトランザクション分離レベルを設定する方法
Spring Framework の transactionmanager と myBatis を組み合わせて使用して、Isolationlevel を自分で設定するのが好きです。私は多くのチュートリアルを試していましたが、何もうまくいきませんでした。
私のアプリケーションは MVC パターンとしてビルドされています。つまり、ビュー、モデル、mybatis からの依存性注入に使用されるインターフェイス、およびコントローラー クラスがあります。
私はmybatisと春の初心者です。アプリケーション全体は非常にうまく動作していますが、私は分離レベルの制御を引き継ぎたいと思っています。
データベースとの間でデータを取得するために mybatis の依存性注入を使用しています
iterface パッケージの例 de.hrw.mgmtDAO;
java.util.List をインポートします。
これは、ビュー(フレーム)を含むメインクラスです
これがコントローラーです。ここでは、分離レベルを SERIALIZABLE に設定しようとしていますが、常にデフォルト (-1) に設定されています。