Druid adalah kumpulan koneksi basis data terbaik dalam bahasa Java. Dibandingkan dengan kumpulan koneksi database lainnya, Druid memiliki dua fitur utama:
Hari ini saya akan mendemonstrasikan integrasi boot musim semi Druid.
Pertempuran yang sebenarnya
1. Tambahkan dependensi Maven.
Versi Spring Boot menggunakan 1.x, dan 2.x versi Druid Starter tidak mendukungnya. Tapi kustomisasi baik -baik saja.
<!-Starter-Web nyaman bagi kita untuk melihat efeknya-> <dependency> <groupid> org.springframework.boot </groupid> <Artifactid> Spring-boot-starter-web </arttifactid> </Dependency> <!-juga mungkin untuk menggunakan Mybatis, Druid menyediakan kumpulan koneksi>-<! <GroupId> org.springframework.boot </proupid> <ArtifactId> Spring-boot-starter-jdbc </arttifactid> </dependency> <dependency> <groupid> com.alibaba </groupid> <ArTifacTid> DRUID-SPRINGING-BOOTTER </ARTIFACTID> <ArTifacTID> DRUID-SPRINGING-BOOTTER </Artifactid> <ArTifacTID> Version.1 </Version.1 </Version.
Konfigurasikan Druid
2. Konfigurasi Aplikasi Druid.
server: port: 9011 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver druid: initial-size: 5 max-active: 10 min-idle: 5 max-wait: 60000 pool-prepared-statements: true max-pool-prepared-statement-per-connection-size: 20 validation-query: select 1 validation-query-timeout: 60000 test-on-borrow: false test-on-return: false test-while-idle: true time-between-eviction-runs-millis: 60000 filter: stat: log-slow-sql: true db-type: mysql slow-sql-millis: 2000 stat-view-servlet: login-username: druid login-password: druid Izinkan: 127.0.0.1 URL-Pattern:/Druid/* Nama pengguna: Kata Sandi Root: 123456 URL: JDBC: mysql: //127.0.0.1: 3306/tes? KarakterEncoding = UTF-8
Konfigurasi Javabean lebih fleksibel, dan kami mengonfigurasinya melalui Javabean.
@ConfigurationPublic Class DruIdConfig {@Bean public jdbctemplate jdbctemplate () {return new jdbctemplate (druidDataSource ()); } // Konfigurasi Konfigurasi dapat secara langsung menyuntikkan nilai mulai dari Spring.Datasource.druid properti konfigurasi aplikasi ke druiddataSource @configurationproperties (prefix = "spring.datasource.druid") @bean (initmethod = "init", nodamethod = "close") @bean (initmethod = "init", nodamethod = "close") {initmethod = "init", nodamethod = "close") DruiddataSource druiddataSource = druiddataSource baru (); // Tambahkan filter pemantauan Druid. Saat ini, hanya fungsi pemantauan yang ditunjukkan. Oleh karena itu, hanya ada satu filter, yang dapat mengimplementasikan beberapa filter. LinkedList <TERFILTER> filterSlist = new LinkedList (); filterslist.add (filter ()); druiddataSource.setProxyFilters (filterslist); kembali DruidDataSource; } @Bean filter public filter () {statfilter statfilter = statfilter baru (); // Waktu eksekusi SQL melebihi 2s ditentukan sebagai statfilter log lambat.setslowsqlmillis (2000); // tunjukkan log lambat statfilter.setlogslowsql (true); // mergesql, kadang -kadang, terlalu banyak log lambat yang sama mempengaruhi pembacaan, memungkinkan fungsi gabungan statfilter.setmergesql (true); Return Statfilter; } // Panel Pemantauan @Bean Public ServletRegistrationBean ServletregistrationBean () {// Daftarkan Sevlet Anda sendiri yang kembali baru ServletRegistrationBean (StatViewServlet baru (), "/druid/*"); }} 3. Buat SQL baru untuk menjalankan tes
Gunakan jdbcteplate untuk memilih data dalam database, kami hanya menunjukkan efek pemantauan druid.
@Restcontroller@springbootApplicationPublic kelas DaoApplication {public static void main (string [] args) {springApplication.run (daoApplication.class, args); } @Autowired jdbctemplate jdbctemplate; @RequestMapping ("/test") test daftar publik () {Daftar akhir <Integer> idList = new LinkedList <Integer> (); jdbctemplate.query ("SELECT * from sh_test1", RowCallbackHandler baru () {@Override public void ProcessRow (hasil RS) melempar sqlexception {idlist.add (rs.getint (1));}}); kembalikan Idlist; }}Jalankan untuk melihat efeknya
5. Demonstrasi selesai
Pada titik ini, Druid sudah dapat digunakan di Spring Boot. Druid menyediakan banyak opsi pemantauan. Artikel ini panjangnya terbatas. Saya hanya akan memperkenalkan penggunaan boot musim semi yang mengintegrasikan Druid.
akhirnya
Artikel ini menunjukkan penggunaan Druid dalam Springboot. Untuk penggunaan Druid, silakan lihat referensi di bawah ini.
merujuk ke
[Penggunaan umum druid] (https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98)
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.