MyBatisの統合ドルイド

pom.xml依存性

<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> 
< プロジェクトのxmlns = "http://maven.apache.org/POM/4.0.0" 
         のxmlns:XSI = "http://www.w3.org / 2001 / XMLスキーマ・インスタンス」
         のxsi:のschemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" > 
    < modelVersion > 4.0.0 </ modelVersion > 

    < groupIdを> COM </ groupIdを> 
    < たartifactId >テスト</ たartifactId > 
    <</ バージョン> 

    < 依存性> 
        < 依存性> 
            < のgroupId > com.alibaba </ のgroupId > 
            < たartifactId >ドルイド</ たartifactId > 
            < バージョン> 1.1.19 </ バージョン> 
        </ 依存> 
        < 依存性> 
            < のgroupId > MySQLの< / のgroupId > 
            < たartifactId >のmysql-コネクタ-javaの</ たartifactId> 
            < バージョン> 8.0.17 </ バージョン> 
        </ 依存> 
        < 依存性> 
            < のgroupId > org.mybatis </ のgroupId > 
            < たartifactId > MyBatisの</ たartifactId > 
            < バージョン> 3.5.2 </ バージョン> 
        </ 依存> 
    </ 依存関係> 

    < 構築> 
        < プラグイン> 
            <プラグイン> 
                <groupId > org.apache.maven.plugins </ のgroupId > 
                < たartifactId > Mavenのコンパイラ・プラグイン</ たartifactId > 
                < 構成> 
                    < ソース> 1.8 </ ソース> 
                    < ターゲット> 1.8 </ ターゲット> 
                    < コード> UTF-8 </ エンコーディング> 
                </ 構成> 
            </ プラグイン> 
        </ プラグイン> 
    </ ビルド>
</ プロジェクト>

DataSourceFactoryのインタフェースを実装しMyBatisの新しい構成クラス

ドルイドDruidDataSourceFactoryも、それは他の名前を取る混ぜることを恐れというクラスを持っています。

パッケージcom.config。

輸入com.alibaba.druid.pool.DruidDataSource。
輸入org.apache.ibatis.datasource.DataSourceFactory; 

インポートするjavax.sql.DataSource;
輸入ます。java.sql.SQLException;
輸入java.util.Properties; 

パブリック クラス DruidDataSourceFactoryは実装DataSourceFactory { 

    プライベートのプロパティのプロパティを。

    @Override 
    公共 ボイドのsetProperties(プロパティのプロパティ){
         の.properties = 性質; 
    } 

    @Override 
    パブリックデータソースをgetDataSource(){ 
        DruidDataSource DDS= 新しいDruidDataSource()。
        dds.setUrl(この .properties.getProperty( "URL" )); 
        dds.setUsername(この .properties.getProperty( "ユーザ名" )); 
        dds.setPassword(この .properties.getProperty( "パスワード" ));
        試す{ 
            dds.initを(); 
        } キャッチ(のSQLException E){ 
            e.printStackTrace(); 
        } 
        戻りDDSと、
    } 
}

プロフィールMyBatisの-config.xmlには、コンフィギュレーション・クラスのデータ・ソース・タイプは、完全なクラス名です

<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> 
<!DOCTYPE設定PUBLIC " - // mybatis.org//DTDコンフィグ3.0 // EN" "http://mybatis.org/dtd/mybatis-3-config.dtd" > 
< 設定> 

    <! - 外部プロパティを配置文件   - > 
    < プロパティのリソースは= "db.properties" /> 

    <! - 配置数据源- > 
    < 環境デフォルト= "開発-mysqlの" > 
        < 環境IDは= "開発-mysqlの" > 
            <
            タイプ= "com.config.DruidDataSourceFactory" > 
                < プロパティ= "URL" = "$ {jdbc.jdbcUrl}" /> 
                < プロパティ= "ユーザ名" = "$ {jdbc.user}" /> 
                < プロパティ名前= "パスワード" = "$ {jdbc.password}" /> 
            </ のdataSource > 
        </ 環境> 
    </ 環境> 

    <! - マッパー:SQL将映射文件注册到全局配置中- > 
    < マッパー>
        <! - クラスパス内の参照SQLマッピングファイル- > 
        <マッパーリソース= "マッパ/ XXXMapper.xml" /> 
    </ マッパー> 
</ 設定>

データベース接続情報db.properties

jdbc.driverClass = com.mysql.cj.jdbc.Driver 
jdbc.jdbcUrl = JDBCます。mysql://127.0.0.1:?3306 /テストuseSslオプション=偽&useUnicode =真&characterEncoding = UTF8&serverTimezone = GMT 
jdbc.user =ルート
jdbc.password =ルート

テスト

パブリック 静的 ボイドメイン(文字列[]引数){ 
    SQLSESSIONセッション = NULL ; 
    SQLSESSION batchSession = nullを試す{ 
        文字列リソース = "MyBatisの-config.xmlの" ; 
        InputStream InputStreamは = Resources.getResourceAsStream(リソース)
        SqlSessionFactory sqlSessionFactory = 新しいSqlSessionFactoryBuilder()(InputStreamを)構築します。
        セッション = sqlSessionFactory.openSession()。
        batchSession = sqlSessionFactory.openSession(ExecutorType.BATCH)。

        // 不用接口的方式
         // ユーザーユーザー= session.selectOne( "com.dao.UserMapper.selectUser"、1); 

        session.commit(); 
        batchSession.commit(); 
    } キャッチ(IOExceptionを電子){ 
        e.printStackTrace(); 
    } 最後に{
         場合(セッション!= NULL ){ 
            session.close()。
        } 
        であれば(batchSession!= NULL ){ 
            batchSession.close()。
        } 
    } 
}

 


 

https://yeyouluo.github.io/2017/10/16/shi-yong-mybatis-ji-cheng-a-li-ba-ba-druid-lian-jie-chi-bu-shi-yong-spring/

https://github.com/alibaba/druid/wiki/DruidDataSource%E9%85%8D%E7%BD%AE

おすすめ

転載: www.cnblogs.com/jhxxb/p/11284031.html