Druid ist eine Implementierung eines Datenbankverbindungspools auf der Open -Source -Plattform von Alibaba. Es kombiniert die Vorteile von DB -Pools wie C3P0, DBCP, Proxool und fügt auch die Protokollüberwachung hinzu, die die Verbindungen von DB -Pools und SQL -Ausführung gut überwachen kann. Es kann als ein DB -Verbindungspool für die Überwachung bezeichnet werden (es soll derzeit der beste Verbindungspool sind)
1. Abhängigkeit
Verwenden Sie zum Testen JDBCTEMplate
<!-- jdbcTemplate --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId></dependency><!-- druid database connection pool--><dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version> 1.0.26 </Version> </abhängig> <!-MySQL Connector-> <Depopenty> <gruppe> Mysql </Groupid> <artifactid> mysql-connector-java </artifactid> <Scope> Laufzeit </scope> </abhängig>
2. Druid -Konfiguration
Druid.Properties#Datenbankeinstellungen spring.datasource.driverClassName = com.mysql.jdbc.driverspring.datasource.url = jdbc: mysql: // localhost: 3306/uu_core? useUnicode = true & charakterscoding = utf8 & aut oreconnect = true & uSessl = treespring.datasource.username = rootspring.dataSource.Password = root#---------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Initialisieren Sie Größe, minimaler, maximaler Spring. Spring.DataSource.TimeBetweenevictionRunsmillis = 60000# Konfigurieren Sie die Mindestzeit, um im Pool in Millisekunden Spring.DataSource.MinevictableIdletImemillis = 300000Spring.Datasource.ValidationQuery = auszuwählen 1 von 1 von DualSpring.DataSource.TestInidle = truespring.dataSource.Testonborrow = falsspring.dataSource.TestonReturn = false# Open PSCache und geben die Größe von pscache an. Filter für die Überwachungsstatistik abgefangen. Nach dem Entfernen kann die Überwachungsschnittstelle SQL nicht gezählt werden. 'Wall' wird für Firewall Spring verwendet. Langsame SQL -Aufzeichnungen Spring.DataSource.ConnectionProperties = druid.stat.Mergensql = true; druid.stat.slowsqlmillis = 5000# Überwachung der Überwachungsdaten mehrerer druiddataSource# Spring.Datasource
3. Die Druid -Datenquelle instanziieren
Paket cn.aduu.config; import com.alibaba.druid.pool.druiddatasource; import com.alibaba.druid.support.http.statviewServlet; importieren com.alibaba.druid.support.http.webstatFilter; org.springframework.boot.context.properties.configurationProperties; import org.springframework.boot.web.servlet.filterregistrationBean; Import org.springFringFramework.Web.Servlet.ServletRetregm. org.springframework.context.annotation.configuration; import org.springFramework.context.annotation "ClassPath: druid.Properties") öffentliche Klasse DruidConfiguration {@bean (DestroyMethod = "Close", initMethod = "init") @ConfigurationProperties (Präfix = "Spring.DataSource") Public DataDataSource () DRIDATASOURCE () DRUIDATASOURCE () DRUIDATASOURCE (; DruiddataSource zurückgeben; } /** * Registrieren Sie ein statViewServlet * @return * /@bean public ServletRegistrationBean druidStatViewServlet () {//org.springFramework.boot.Context.Embeded.ServletRetRegridationBean bereit, die Klasse für die Registrierung zur Registrierung bereitzustellen. ServletRegistrationBean ServletRegistrationBean = new ServletRegistrationBean (neuer StatViewServlet (), "/druid/*"); // Initialisierungsparameter hinzufügen: initparams // Whitelist: ServletRegistrationBean.addinitParameter ("erlauben", "127.0.0.1"); // IP Blacklist (Wenn eine Gemeinsamkeit vorliegt, hat Deny Vorrang vorzulassen): Wenn die Verweigerung erfüllt ist, fordert es sich an: Sorry, Sie dürfen diese Seite nicht anzeigen. ServletRegistrationBean.addinitParameter ("Deny", "192.168.1.73"); // Loginieren Sie das Kontokennwort zum Anzeigen von Informationen. servletregistrationBean.addinitParameter ("loginusername", "admin"); servletRegistrationBean.addinitParameter ("LoginPassword", "123456"); // Ist es möglich, die Daten zurückzusetzen? servletRegistrationBean.addinitParameter ("zurückgezogen", "falsch"); Return servletRegistrationBean; } / ** * Registrieren Sie eine: filterregistrationBean * @return * / @bean public filterregistrationBean druidstatFilter () {FilterregistrationBean FilterregistrationBean = new FilterregistrationBean (new webstatFilter ()); // Filterregeln hinzufügen. filterregistrationBean.addurlpatterns ("/*"); // Formatinformationen hinzufügen, die nicht ignoriert werden müssen. filterregistrationBean.addinitParameter ("Ausschlüsse", "*. Js,*. Gif,*. Jpg,*. Png,*. CSS,*. ICO,/Druid/*"); Rückgabefilterregistrierungsbean; }}4. Überwachung
Besuchen Sie http: // localhost: 8080/druid und verwenden Sie das oben konfigurierte Kontokennwort.
V. Test
@RestControllerPublic Class HelloConTroller {private statische logger logger logger = loggerfactory.getLogger (hellocontroller.class); @Autowired Private JDBCTEMPLET JDBCTEMPLATE; @RequestMapping ("Hallo") öffentliche Liste <map <String, Objekt >> hello () {list <map <String, Objekt >> list = jdbctemplate.QueryForList ("Benutzer, Kennwort von mysql.user", New Object [] {}); Rückgabeliste; }}Besuchen Sie Localhost: 8080/Hallo
[{"Benutzer": "root", "Passwort": "*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B"}, {"Benutzer": "Root", "Passwort": "*81f5e21e35407d884a6a6a6a731aeBf6209E1b" ’}) Zusammenfassen
Das obige ist die vom Editor vorgelegte Springboot -Datenquelle. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Editor wird Ihnen rechtzeitig antworten. Vielen Dank für Ihre Unterstützung auf der Wulin.com -Website!