--- ---復元コンテンツ始まります
ネイティブブラウザで - MVC階層的な思考を使用してサーバアーキテクチャ、当社全体のプログラムは、制御層、ビジネス層、永続化レイヤ3つに分割されています
要求制御層は、(サーブレット)ユーザーのブラウザプロセスから送信された要求を、受信するための責任がある、ブラウザに戻って、レスポンス(ビジネス層を呼び出します)
サービス層(サービス)は、ビジネス、呼び出しDAO層を処理する責任があり、その結果はコントロールレベルに戻りました
永続層(DAO)は、SQL文を記述するための責任があり、データベース接続(JDBC)は、実行され、データベースに結果を取得し、ビジネス層に戻ります
これは、ネイティブコードを変更することは容易ではない、非常に面倒であり、JDBCプロセスのこのセットが死んで、どのように彼らは、これらの反復無意味な作業に大きな時間を無駄にすることができますか?
ただ、考えて、機能を記述するとき、まず最初に、直接呼び出しを使用する場合、少なくともメインプロセスをクリアするために、物事は、リピート方法にパッケージ化する必要があり、とりわけ?あるべきである何、重複コードの多くに会いました。
サーバー側では、それはまた、そのような操作はもはや単なる方法としてパッケージ化されていないとしました。代わりに吹き替えxmlファイル
プログラム上の行は、ソースコードを変更することは面倒であるとき、時にはシャットダウンし、サーバープロジェクト、ソースコードの再デプロイメントを再起動する必要があり、ここではXMLに言及する必要があります。価格は依然として非常に大きいです。とXMLで、
私たちは、サーバーをシャットダウンすることなく、また、関数の目的を達成するために変更することができ、XML(プロファイル)でのプロパティとメソッドを書くことができます。
ここでは、我々が使用しようとしているmybatis.xmlは、このような設定ファイルです。
ネイティブコードのDAO層に加えて、あなただけの、パッケージ内の抽象メソッドを記述するためのインタフェースをパケットマッパー、および(例えばUserMapperとUserMapper.xmlなど)に対応する.xmlの書き込みインタフェースを作成する必要がある、MyBatisの実施形態を使用しUserMapper
コンフィギュレーションを書き込むUserMapper.xmlは、ID実行するメソッドの名前を書いて、CRUDは、対応するラベルを有します。
それは、もともとビジネス層のDAO層への呼び出しだった、行うにはどのように何層のDAOはありませんか?
その後、我々は、動的プロキシを作成し、ビジネス層にSQLSESSIONオブジェクトを作成し、SQLSESSIONオブジェクトを導入し、制御層への応答を、検索結果を返しますと戻り結果を変更するために追加や削除を呼び出すためのプロキシメソッドを使用します。
あなたは、SQLのパラメータに必要がある場合は、それをどのように扱うか?(ここでは基本的なタイプは、ヒト以外の書き込みクラスを参照します)
タグのみ{0}に対応する#SQLステートメントに対応するパラメータのために必要な単一のパラメータ、基本型は、最初のパラメータが表します
2つのパラメータの参照型、に示されている位置に対応する書き込み専用#{}キーまたは属性名
パラメータの三対、基本的なタイプ、#{0}、{#1}
パラメータ参照型の四つ組、#{PARAM1。キー}#{PARAM2。}キー名
参照基本パラメータ、#{PARAM1}#{PARAM2。}キー名の5組
このような動的生産井のMyBatisのDAO層によって生成されました