MyBatisのフレームワークは、半自動マッピングです。「半自動」の面で完全なHibernateマッピングテーブルに相対的である、MyBatisのは、手動でのオファーPOJO、SQLおよびマッピング関係を一致させる必要があり、HibernateとPOJOは単純にマッピング関係をすることができます。
MyBatisの手動休止SQLを使用するよりも作業負荷を書くが、MyBatisの動的SQLおよびSQLを最適化するように構成することができるが、休止状態と比較して、SQLマッピング規則は構成によって決定することができ、それはまた、ストアドプロシージャをサポートします。いくつかの複雑なとプロジェクトのパフォーマンスを最適化する必要性について、より適切なMyBatisのを使用していることは明らかです。
パブリッククラスMybatisUtils {
プライベート静的SqlSessionFactory sqlSessionFactory = NULL;
静的{
{試します
リーダリーダ= Resources.getResourceAsReader( "MyBatisの-config.xmlの");
sqlSessionFactory =新しいSqlSessionFactoryBuilder()構築(リーダー)。
}キャッチ(例外e){
e.printStackTrace();
}
}
パブリック静的SQLSESSIONのgetSession(){
sqlSessionFactory.openSessionを返します();
}
}
<プロパティリソース= "db.properties" />
<データソースタイプ= "POOLED">
<! - データベース駆動型 - >
<プロパティ名= "ドライバ" 値= "$ {jdbc.driver}" />
<! - データベースのURLへの接続 - >
<プロパティ名= "URL" の値= "$ {jdbc.url}" />
<! - データベースへのユーザー名の接続 - >
<プロパティ名= "ユーザ名" 値= "$ {jdbc.username}" />
<! - データベースに接続するためのパスワード - >
<プロパティ名= "パスワード" 値= "$ {jdbc.password}" />
</のdataSource>
<環境のデフォルト=「開発」>
<環境ID = "開発">
<トランザクションマネージャーのタイプ= "JDBC" />
<データソースタイプ= "POOLED">
<プロパティ名= "ドライバ" 値= "$ {jdbc.driver}" />
<プロパティ名= "URL" の値= "$ {jdbc.url}" />
<プロパティ名= "ユーザ名" 値= "$ {jdbc.username}" />
<プロパティ名= "パスワード" 値= "$ {jdbc.password}" />
</のdataSource>
</環境>
...
</環境>