ホームページ  >  記事  >  Java  >  MyBatis ソース コード学習 SqlSession 作成

MyBatis ソース コード学習 SqlSession 作成

PHP中文网
PHP中文网オリジナル
2017-06-22 11:44:351160ブラウズ

MyBatis はデータベースを操作するための JDBC コードをカプセル化し、SqlSession を通じて SQL ステートメントを実行します。まず、MyBatis が SqlSession を作成する方法を見てみましょう。
MyBatis が Spring にホストされていない場合、パラメーターは構成ファイルのすべての情報を含むリーダー オブジェクトです。

1 Reader reader =  Resources.getResourceAsReader("Configuration.xml");

最後に、DefaultSqlSessionFactory オブジェクトが返され、DefaultSqlSessionFactory の openSession() を通じて SqlSession オブジェクトが返されます

最終的に DefaultSqlSession が返されることがわかります。これは、SqlSession オブジェクトです。 ) selectList(...)

selectMap(...) update(...) および DefaultSqlSession の他のメソッドが実際に SQL を実行するメソッドです

具体的な実行は executor オブジェクトによって実行され、実行されます

public SqlSessionFactory build(Reader reader, String environment, Properties properties) {
    try {
        //委托XMLConfigBuilder来解析xml文件,并构建
      XMLConfigBuilder parser = new XMLConfigBuilder(reader, environment, properties);
      return build(parser.parse());
    } catch (Exception e) {
      throw ExceptionFactory.wrapException("Error building SqlSession.", e);
    } finally {
      ErrorContext.instance().reset();
      try {
        reader.close();
      } catch (IOException e) {
  }
public SqlSessionFactory build(Configuration config) {
    return new DefaultSqlSessionFactory(config);
  }

以上がMyBatis ソース コード学習 SqlSession 作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。