14、MyBatisアノテーション
14.1。MyBatisの運用プロセス
-
コア構成ファイルを読み取ります。
-
重量級のコンポーネントであり、スレッドセーフなSqlSessionFactoryを作成します。sessionFactoryはデータベース環境に対応します。
-
SqlSessionを作成します。軽量で、スレッドセーフではありません。
-
永続化操作にはSqlSessionを使用します。
14.2、MyBatisの一般的なアノテーション
- @Insert:挿入SQLステートメントを定義するのと同じです。
@Insert("insert into user values (default,#{user_name},#{password})")
void addUser(User user);
- @Update:更新SQLステートメントを定義するのと同じです。
@Update("update user set user_name=#{user_name},password=#{password} where user_id=#{user_id}")
void updateUser(User user);
- @Delete:削除SQLステートメントを定義するのと同じです。
@Delete("delete from user where user_id=#{user_id}")
void deleteUser(int user_id);
- @Select:selectSQLステートメントを定義するのと同じです。
@Select("select * from user")
List<User> queryUser();
-
@Results:結果のマッピングと等しく、定義します。
-
@Result:およびと同等で、プロパティのマッピングに使用されます。
@Results(value = {
@Result(column = "user_id",property = "userID"),
@Result(column = "user_name",property = "userName"),
@Result(column = "password",property = "password"),
})
14.3.注意
- 注釈はインターフェースに実装されます。
- インターフェイスはコア構成ファイルにバインドする必要があります。
エッセンス:リフレクションメカニズムの実装
最下層:動的プロキシ