<!DOCTYPE HTML> [ノート] MyBatisの構成、およびマッパーファイル
[ご注意] MyBatisのマッパーの構成ファイルと指示
名前空間
-
名前空間を定義し、DAO層は、データベースの操作のファイルで定義されたメソッドを呼び出しマッパー
-
マッパーファイルのパラメータ:
<select>
<insert>
そして、他のラベルは、この方法は、関数を定義します- タグは、
id
この方法は、DAO層名と呼ばれることが、メソッド名を定義します parameterType
パラメータは、パラメータのタイプ、メソッド呼び出し、および一貫性の層のDAOを定義しますresultType
これは、DAO層と一致するメソッドの戻り値を呼び出し、戻り値のタイプを定義します<insert>
タグのパラメータは、useGeneratedKeys
属性値が自動的にインクリメントされているかどうかを示すkeyProperty
表現は、増分属性列を可能に<sql>
ラベルの使用、コードの重複を減らすの量。参照してくださいタグを使用するSQL
<マッパー名前空間= "com.kris.dao.MyUserDao"> ... </マッパー>
CRUD操作
<選択し、ID = "findById" useCache = "false" とのParameterType = "int型" resultTypeと= "com.kris.model.MyUser"> my_userから選択* ここで、ID =#{ID} </ select>の <選択し、ID = "findByName" resultTypeと= "com.kris.model.MyUser"> my_userから選択* ここで、名前=#{名前} </ select>の <選択し、ID = "countByName" のParameterType = "文字列" resultTypeと= "INT"> SELECT COUNT(*)my_userから ここで、名前=#{名前} </ select>の <ID = "挿入" のParameterType = "com.kris.model.MyUser" useGeneratedKeys挿入= "true" をkeyProperty = "ID"> my_userへの挿入(ID、名前、パスワード) 値(#{ID}、#{名前}、#{パスワード}) </挿入> <更新ID = "更新" のParameterType = "com.kris.model.MyUser"> 更新my_user セット名=#{名前}、 パスワード=#{パスワード} ここで、ID =#{ID} </更新> <削除のid = "削除" のParameterType = "INT"> my_userから削除 ここで、ID =#{ID} </削除>
ユニットテスト
-
クラス図
-
ユニットテストのアイデア
- DAOマッパー定義ファイルの名前空間、すなわちマッパ文書実装に応じてインターフェイスで定義されたインタフェースDAO DAO層、
- ダオ層インターフェースユニットをテストするとき、オブジェクトは、その後であってもよいインタフェースメソッドを呼び出すダオを宣言する必要があります
-
エラーが発生しやすいポイント
- SQL構文エラー
- 受信パラメータと間違った型を返します