問題タブ [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.

0 投票する
2 に答える
14638 参照

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 の問題ですか?

0 投票する
2 に答える
4993 参照

spring - MyBatis で Spring を使用してトランザクション分離レベルを設定する方法

Spring Framework の transactionmanager と myBatis を組み合わせて使用​​して、Isolationlevel を自分で設定するのが好きです。私は多くのチュートリアルを試していましたが、何もうまくいきませんでした。

私のアプリケーションは MVC パターンとしてビルドされています。つまり、ビュー、モデル、mybatis からの依存性注入に使用されるインターフェイス、およびコントローラー クラスがあります。

私はmybatisと春の初心者です。アプリケーション全体は非常にうまく動作していますが、私は分離レベルの制御を引き継ぎたいと思っています。

データベースとの間でデータを取得するために mybatis の依存性注入を使用しています

iterface パッケージの例 de.hrw.mgmtDAO;

java.util.List をインポートします。

これは、ビュー(フレーム)を含むメインクラスです

これがコントローラーです。ここでは、分離レベルを SERIALIZABLE に設定しようとしていますが、常にデフォルト (-1) に設定されています。