転載します。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の情報を監視し