6.2 Springbootソースデータ統合ドルイド

転載します。https://www.cnblogs.com/hellokuangshen/p/11331338.html

A.統合ドルイドデータソース

1.ステップ:

  • 統合JDBCベースアップの統合ドルイド(やや)

  • そして、依存ドルイドのpom.xmlのlog4jを追加

  • application.yml追加の設定情報

  • log4j.properties構成情報のログを追加します。

  • 容器定義された設定にソースからのJavaドルイド構成データを使用して

  • 設定が成功したかどうかをテスト

  • データソースはドルイドを監視するように構成しました

  • フィルタの設定ドルイド

  • テスト

依存ドルイドとのlog4jを追加2.pom.xml

<! - ドルイド- > 
< 依存> 
    < groupIdを> com.alibaba </ groupIdを> 
    < たartifactId >ドルイド</ たartifactId > 
    < バージョン> 1.1.21 </ バージョン> 
</ 依存関係>

<! - Log4jの- > 
< 依存> 
    < groupIdを> log4jの</ groupIdを> 
    < たartifactId > log4jの</ たartifactId > 
    < バージョン> 1.2.17 </ バージョン> 
</ 依存関係>

設定情報を追加し3.application.yml

春:
   情報元:
     ユーザ名:ルート
     パスワード:123456
     エラー#?ServerTimezone = UTCタイムゾーンを解決するために
     URLます。jdbc:mysqlの:// localhostを:?3306 / MyBatisのserverTimezone = UTC &useUnicode =真&characterEncoding = UTF-8
     ドライバー・クラス名:com.mysql.cj.jdbc.Driver
     タイプ:com.alibaba.druid.pool.DruidDataSource

     #Springブートデフォルトはこれらのプロパティ値に注入されていない、それが結合、独自のを必要とします
     独自のデータソースを#druid配置しました
     INITIALSIZE:5
     minIdle:5
     MAXACTIVE:20
     MAXWAIT:60000
     timeBetweenEvictionRunsMillis:60000
     minEvictableIdleTimeMillis:300000
     validationQuery:DUAL FROM SELECT 1
     testWhileIdle:真
     testOnBorrowの偽
     testOnReturnの偽
     poolPreparedStatements:真

     #設定の監視統計には、フィルターをブロックし、STAT:モニタリング統計、log4jの:伐採、壁:ディフェンスSQLインジェクション
     許可されている場合#にjava.lang.ClassNotFoundExceptionエラー:org.apache.log4j.Priority
     #、Mavenの住所への輸入に依存してのLog4j:https://mvnrepository.com/artifact/log4j/log4j
     フィルター:STAT、壁、log4jの
     maxPoolPreparedStatementPerConnectionSize:20
     useGlobalDataSourceStat:真
     ConnectionProperties:druid.stat.mergeSql =真; druid.stat.slowSqlMillis = 500

ログ情報のlog4j.propertiesを追加4.

  • リソースディレクトリのプロジェクトの下で設立さLog4j.properties

log4j.rootLogger = DEBUG、STDOUT
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern =%5P [%のT]  - %のm個の%nを

容器へ5. Java構成ドルイド・カスタム・データ・ソース構成

  • コントローラの設定ディレクトリとカタログに追加することは、configure application.properties BeanにグローバルコンフィギュレーションファイルをJavaバインディングを使用するDruidConfig.javaの方法を追加するconfigディレクトリ内のコンテナに追加生成CONFIG

1  @Configuration
 2  パブリック クラスDruidConfig {
 3  
4      / * 
5         ドルイドの容器に加え、データソース定義から、全く春の起動が自動的に作成しないように
 。6         com.alibaba.druidにグローバルコンフィギュレーションファイルを結合ドルイドデータソース属性.pool.DruidDataSourceので、彼らを有効にすることを
 7         @ConfigurationProperties(接頭辞=「spring.datasource」):役割はグローバルプロファイルである
 8つの        prefix属性値spring.datasourceは、同じ名前のcom.alibaba.druid.pool.DruidDataSourceに注入パラメータ
 。9       * / 
10      @ConfigurationProperties(接頭辞= "spring.datasource" 。11      @Bean
 12は     パブリックデータソースDruidDataSource(){
 13は         リターン 新しいDruidDataSource();
14      }
 15 }

設定が成功したかどうかをテスト6

@Test
 のボイド TEST2()がスローするSQLException {
     // デフォルトのデータソースを見て
    のSystem.out.println(dataSource.getClass());
     // 接続を取得 
    接続接続を=    dataSource.getConnection();
    System.out.println(接続)。

    DruidDataSource druidDataSource = (DruidDataSource)データソース。
    System.out.println( "接続のデータソースDruidDataSourceの最大数:" + druidDataSource.getMaxActive());
    System.out.println( "DruidDataSource接続初期データソース:" + druidDataSource.getInitialSize())。

    // 近い接続
    Connection.close();
}

7.制御データを監視する構成ドルイド

  • ドルイド機能監視とデータソース、および場合にも同様のルータのインストールユーザーがチェックできるようにするWebインターフェイスを提供し、彼らはまた、デフォルトのWebページを提供しています。

  • 最初のステップあなたは管理者ページドルイドを設定する必要があり、そのようなログイン名、パスワードなどなど、構成管理の背景;

// 設定ドルイドサーブレットは、監視と管理の背景;
 // なしweb.xmlファイルを内蔵したときにServlerコンテナなので、春ブーツサーブレット道を登録し使用
@Bean
 公共ServletRegistrationBean statViewServlet(){
    ServletRegistrationBean豆 = 新しい ServletRegistrationBean( StatViewServlet()、 "/ドルイド/ *" );

    地図 <文字列、文字列> initParams = 新しい HashMapの<> ();
    initParams.put( "loginUsername"、 "ADMIN"); // のログインアカウントの管理インターフェース 
    initParams.put( "LOGINPASSWORD"、 "123456"); // 管理インターフェースのログインパスワード

    // へのアクセス許可されている背景
     // initParams.put(「許可」、「ローカルホスト」を):のみアクセスすることができ、この手段
     // initParams.putを(「「許可」」):空またはnullの場合には、手段すべてのアクセス許可 
    initParams.putを( "許可"、 "" );
     // 拒否:訪問を拒否したドルイド背景
     // initParams.put( "" 192.168.1.20 "" kuangshen)は、このIPアクセスが無効になっています。

    // 初期化パラメータセット
    bean.setInitParameters(initParams)を、
     返す豆を、
     // これらの値は、親com.alibaba.druid.support.http.ResourceServlet com.alibaba.druid.support.http.StatViewServletに設けられています 
}

8.フィルタ構成ドルイド

  • フィルタの役割は、SQLの実行時間によって発行されたSQL文と、すべてのデータベースの情報をWebアプリケーションの要求を、カウント要求、要求のURLアドレスの数だけでなく、訪問は、データベーステーブルを監視し、というようにseesionすることです。

// 監視ウェブ監視ドルイドフィルタの構成
 @ WebStatFilter:構成管理ウェブとデータソースとの間の統計的関連ドルイド監視する
@Bean
 公共FilterRegistrationBean webStatFilterを(){
    FilterRegistrationBeanビーン = 新しいFilterRegistrationBean()。
    bean.setFilter(新しいWebStatFilter());

    // 除外:カウントしないように、ろ過によって除外設定要求を 
    地図<文字列、文字列> = initParamsが新しい新しいのHashMap <>を();
    initParams.put( "除外"、 "* .jsファイル、* CSS、/ドルイド/ *。" );
    bean.setınitparameters(initparams)。

    // "/ *"すべての要求をフィルタリングすることを示して 
    bean.setUrlPatterns(は、Arrays.asList( "/ *"を));
     を返すBeanを。
}

9.テスト

  • 設定が完了すると、我々が訪問することを選択できます。http:// localhost:8080 /ドルイド/ login.htmlと

  • お使いのコンフィギュレーション用のユーザー名とパスワード

  • // localhostを:次に、ページの訪問は、HTTP開く8080 / USERLISTユーザー情報を参照し、リフレッシュはlocalhost:8080 /ドルイド/ sql.htmlは、SQLの情報を監視し

 

おすすめ

転載: www.cnblogs.com/zhihaospace/p/12405336.html