Mybatis技術環境を構築する
4261 ワード
1、Mybatisを使用する前に、Mybatisフレームをプロジェクトに追加する必要があります.主な手順は以下の通りです.プロジェクトのためのMybatis開発パッケージとデータベースドライバパッケージを追加します. srcにMybatisプロファイルSql MapConfig.xmlを追加します. Sql MapConfig.xmlを変更し、データベース接続パラメータ を指定します. Mybatis APIを用いてプログラムし、Sql Sessionのインスタンス を取得する.
2、Sql Sessionオブジェクトを取得するデータテーブルに基づいてエンティティクラス(Java POJO) を作成する. Sql Map.xmlマッピングファイルを作成し、SQL動作とマッピング情報を定義する Sql Session対応を取得し、添削検索を実行する .提出トランザクション(DMM)動作 Sql Sessionオブジェクトリソースを解放する 4、Sessionの添削調査
Mapperインターフェースの要求については、パラメータを重複させることはできません.一つしかないです.複数のパラメータは、値の対象を使って照会してこそ、戻り値があります.
だからMapperはDAOではなく、Daoがなくて便利です.
6、Mybatisを利用してページ別の照会を実現する.
Sql SessionのselectList()メソッドを使用する場合は、RowBoundsセパレータパラメータを指定し、指定範囲のレコードを照会することができます.
RowBoundsコンストラクタ
offsetは、レコードの先頭行を指定し、0から開始します.
limit指定キャプチャ記録の数
selectList()の使い方
sql Session.selectList(SQLのID、パラメータ、RowBoundsオブジェクト)
ヒント:
Mybatis改ページはメモリ改ページに基づいており、原理的にはすべての記録を調べ、JDBCベースのabsoluute()とnext()法に基づいて取得部分を特定して記録するので、大量のデータが発生した場合にはMybatisを使用することは推奨されない.開発者がページ別クエリーのSQL文を指定したり、Mybatisを拡張して使う必要があります.
7、Mapperマッパーを使用する
Mapperマッパーは、開発者がバインディングステートメントマッピングを作成するインターフェースであり、マッパーインターフェースの例はSql Sessionから得ることができる.
8、ResultMapマッピング定義
Sql Map.xml定義<select>操作の場合、クエリの結果フィールド名とJava POJO属性が一致しない場合は、<resultMap>要素表示の指定マッピング関係が必要です.例えば
2、Sql Sessionオブジェクトを取得する
String cfg = "SqlMapConfig.xml";
Reader reader =
Resources.getResourceAsReader(cfg);
SqlSessionFactoryBuilder builder=
new SqlSessionFactoryBuilder();
SqlSessionFactory factory =
builder.build(reader);
SqlSession session =
factory.openSession();
Connection conn=session.getConnection();
System.out.println(conn);
System.out.println(conn.getMetaData()
.getDatabaseProductName());
conn.close();
session.close();
3、Sql Sessionオブジェクトを取得すると、データテーブルを添削して調べることができます.使用手順は以下の通りです.
session.insert("addDept",dept);
session.commit();
session.close();
session.update("updateDept",dept);
session.commit();
session.close();
session.delete("deleteById",10);
session.commit();
session.close();
session.selectone("findById",10);//
session.close();
session.selectList("findAll");
session.close();
5、Sql Sessionは直接Sql文の実行をサポートします.Mapperインターフェースの要求については、パラメータを重複させることはできません.一つしかないです.複数のパラメータは、値の対象を使って照会してこそ、戻り値があります.
だからMapperはDAOではなく、Daoがなくて便利です.
6、Mybatisを利用してページ別の照会を実現する.
Sql SessionのselectList()メソッドを使用する場合は、RowBoundsセパレータパラメータを指定し、指定範囲のレコードを照会することができます.
RowBoundsコンストラクタ
offsetは、レコードの先頭行を指定し、0から開始します.
limit指定キャプチャ記録の数
selectList()の使い方
sql Session.selectList(SQLのID、パラメータ、RowBoundsオブジェクト)
ヒント:
Mybatis改ページはメモリ改ページに基づいており、原理的にはすべての記録を調べ、JDBCベースのabsoluute()とnext()法に基づいて取得部分を特定して記録するので、大量のデータが発生した場合にはMybatisを使用することは推奨されない.開発者がページ別クエリーのSQL文を指定したり、Mybatisを拡張して使う必要があります.
7、Mapperマッパーを使用する
Mapperマッパーは、開発者がバインディングステートメントマッピングを作成するインターフェースであり、マッパーインターフェースの例はSql Sessionから得ることができる.
try{
DeptMapper mapper=session.getMapper(DeptMapper.class);
//do work
}finally{
session.close();
}
Mapperインターフェースのメソッド名はSlqMap.xmlのSQLのidと一致しています.8、ResultMapマッピング定義
Sql Map.xml定義<select>操作の場合、クエリの結果フィールド名とJava POJO属性が一致しない場合は、<resultMap>要素表示の指定マッピング関係が必要です.例えば
<select id="findAll1" resultMap="deptMap">
select DEPTNO,DNAME,LOC from DEPT
</select>
<resultMap id="deptMap" type="org.tarena.entity.Dept">
<result property="no" column="DEPTNO"/>
<result property="name" column="DNAME"/>
<result property="loc" colum="LOC"/>
</resultMap>