Javaフレームワーク編---Mybatis入門
4017 ワード
一、Mybatis紹介
二、MyBatisワークフロー
トリガ条件:ロードプロファイル構成は2つの場所に由来し、1つはプロファイル、1つはJavaコードの注釈です.
トリガ条件:Mybatisが提供するAPI入力パラメータを呼び出す:SQLのIDと入力パラメータオブジェクトの処理プロセス:要求を下層の要求処理層に渡して処理する.(3)処理操作要求トリガ条件:APIインタフェース層が要求を伝達してパラメータを伝達する:SQLのIDと伝達パラメータオブジェクトの処理過程:(A)SQLのIDに基づいて対応するMappedStatementオブジェクトを検索する.(B)入力パラメータオブジェクトに基づいてMappedStatementオブジェクトを解析し、最終的に実行するSQLと入力パラメータを取得する.(C)データベース接続を取得し、得られた最終SQL文と実行入力パラメータに基づいてデータベース実行を行い、実行結果を得る.(D)MappedStatementオブジェクトにおける結果マッピング構成から得られた実行結果に基づいて変換処理を行い,最終的な処理結果を得る.(E)接続リソースを解放する.(4)処理結果を返し最終的な処理結果を返す.
三、ormツールの基本思想
プロファイル(通常XMLプロファイル)からsessionfactoryを得る.sessionfactoryによって生成するsessionは、sessionでデータの削除変更やトランザクションのコミットなどを完了する.使い終わったらセッションを閉じます.Javaオブジェクトとデータベースの間にmappingを行うプロファイルがあり、通常はxmlファイルです.
四、機能アーキテクチャ
Mybatisの機能アーキテクチャは3つの層に分けられる:APIインタフェース層:外部で使用されるインタフェースAPIを提供し、開発者はこれらのローカルAPIを通じてデータベースを操作する.インタフェース層は、呼び出し要求を受信すると、特定のデータ処理を完了するためにデータ処理層を呼び出す.データ処理層:具体的なSQL検索、SQL解析、SQL実行と実行結果マッピング処理などを担当する.主な目的は、呼び出された要求に基づいてデータベース操作を完了することです.基礎サポート層:接続管理、トランザクション管理、構成ロード、キャッシュ処理など、最も基礎的な機能サポートを担当します.これらは共通のもので、最も基礎的なコンポーネントとして抽出されます.上位レベルのデータ処理層に最も基礎的なサポートを提供します.追加するドライバパッケージ:
五、クイックスタート:1、エンティティークラスUser:[Java]純テキスト表示?
public class User {
}
2,マッピングファイルUserMapping.xml[XML]純テキスト表示
3、資源ファイルmybatis.xml[XML]純テキスト表示?
4、テストクラス:
[Java]純テキスト表示?
public class Tests {
}
MyBatis SQL、 。MyBatis JDBC , 。MyBatis XML , 、Map POJOs( java ) 。
二、MyBatisワークフロー
(1)
トリガ条件:ロードプロファイル構成は2つの場所に由来し、1つはプロファイル、1つはJavaコードの注釈です.
(2)
トリガ条件:Mybatisが提供するAPI入力パラメータを呼び出す:SQLのIDと入力パラメータオブジェクトの処理プロセス:要求を下層の要求処理層に渡して処理する.(3)処理操作要求トリガ条件:APIインタフェース層が要求を伝達してパラメータを伝達する:SQLのIDと伝達パラメータオブジェクトの処理過程:(A)SQLのIDに基づいて対応するMappedStatementオブジェクトを検索する.(B)入力パラメータオブジェクトに基づいてMappedStatementオブジェクトを解析し、最終的に実行するSQLと入力パラメータを取得する.(C)データベース接続を取得し、得られた最終SQL文と実行入力パラメータに基づいてデータベース実行を行い、実行結果を得る.(D)MappedStatementオブジェクトにおける結果マッピング構成から得られた実行結果に基づいて変換処理を行い,最終的な処理結果を得る.(E)接続リソースを解放する.(4)処理結果を返し最終的な処理結果を返す.
三、ormツールの基本思想
hibernate,mybatis, :
プロファイル(通常XMLプロファイル)からsessionfactoryを得る.sessionfactoryによって生成するsessionは、sessionでデータの削除変更やトランザクションのコミットなどを完了する.使い終わったらセッションを閉じます.Javaオブジェクトとデータベースの間にmappingを行うプロファイルがあり、通常はxmlファイルです.
四、機能アーキテクチャ
Mybatisの機能アーキテクチャは3つの層に分けられる:APIインタフェース層:外部で使用されるインタフェースAPIを提供し、開発者はこれらのローカルAPIを通じてデータベースを操作する.インタフェース層は、呼び出し要求を受信すると、特定のデータ処理を完了するためにデータ処理層を呼び出す.データ処理層:具体的なSQL検索、SQL解析、SQL実行と実行結果マッピング処理などを担当する.主な目的は、呼び出された要求に基づいてデータベース操作を完了することです.基礎サポート層:接続管理、トランザクション管理、構成ロード、キャッシュ処理など、最も基礎的な機能サポートを担当します.これらは共通のもので、最も基礎的なコンポーネントとして抽出されます.上位レベルのデータ処理層に最も基礎的なサポートを提供します.追加するドライバパッケージ:
五、クイックスタート:1、エンティティークラスUser:[Java]純テキスト表示?
public class User {
private String id;
private String name;
private int age;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + ", age=" + age + "]";
}
}
2,マッピングファイルUserMapping.xml[XML]純テキスト表示
3、資源ファイルmybatis.xml[XML]純テキスト表示?
4、テストクラス:
[Java]純テキスト表示?
public class Tests {
@Test
public void test(){
String resource = "mybatis.xml";
// mybatis ( )
InputStream is = Tests.class.getClassLoader().getResourceAsStream(resource);
// sqlSession
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = sessionFactory.openSession();
/**
* sql ,
* com.oumyye.mapping.UserMapping userMapper.xml mapper namespace ,
* getUser select id , select id SQL
*/
String statement = "com.oumyye.mapping.UserMapping.getUser";// sql
// user sql
User user = session.selectOne(statement, "1123");
System.out.println(user.toString());
}
}