Rumah  >  Artikel  >  Java  >  Bagaimana SpringBoot menyepadukan JdbcTemplate

Bagaimana SpringBoot menyepadukan JdbcTemplate

王林
王林ke hadapan
2023-05-20 21:16:181359semak imbas

    Kata Pengantar

    Operasi pangkalan data Spring dikapsulkan dalam jdbc pada tahap yang lebih mendalam, dan JdbcTemplate ialah alat mudah yang disediakan oleh Spring untuk mengendalikan pangkalan data. Kami boleh menggunakan JdbcTemplate untuk melaksanakan semua operasi pangkalan data, seperti memasukkan, mengemas kini, memadam dan mendapatkan semula data daripada pangkalan data, dan dengan berkesan mengelakkan pengekodan yang membosankan yang disebabkan oleh penggunaan jdbc secara langsung

    Mulakan projek SpringBoot

    Gunakan IDEA mencipta projek

    Klik Fail–>Projek–>Baharu

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Klik spring initializr, perhatikan versi SDK anda dan kemudian klik seterusnya

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Isi kumpulan dan artifak anda, ambil perhatian bahawa versi Java adalah konsisten dengan versi SDK sebelumnya, klik seterusnya

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Pilih sendiri Kebergantungan yang akan ditambahkan akan ditambahkan secara automatik pada maven apabila projek dibuat, kemudian
    klik seterusnya

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    isi nama projek anda dan klik selesai

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Import kebergantungan JDBC

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-data-jdbc</artifactId>
            </dependency>

    Import pemacu pangkalan data

    Pangkalan data MySQL yang saya gunakan di sini, hanya import pemacu pangkalan data MySQL

     <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>5.1.42</version>
            </dependency>

    Ubah suai Fail konfigurasi

    Saya menggunakan fail konfigurasi format yml di sini

    spring:
      datasource:
        url: jdbc:mysql://localhost:3306/test?characterEncoding=utf8
        username: root
        password: admin
        driver-class-name: com.mysql.jdbc.Driver

    Struktur jadual pengguna_sistem pangkalan data

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Uji kod kelas

    Soal jumlah data dalam jadual pengguna_sys

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
            //获取sys_user表数据量
            Long aLong = jdbcTemplate.queryForObject("select count(*) from sys_user", Long.class);
            log.info("记录总数:{}", aLong);
    }

    Jalankan hasil

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Soal sekeping data dalam sys_user table

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
            //获取sys_user表一条数据
            Map<String, Object> map = jdbcTemplate.queryForMap("select * from sys_user where id = 1");
            log.info("map数据为:" +  map);
        }
    }

    Jalankan hasil

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Soal semua data dalam sys_user table

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
        	//获取sys_user表所有数据
            List<Map<String, Object>> list = jdbcTemplate.queryForList("select * from sys_user");
            log.info("list数据为:" + list);
        }
    }

    Tambah sekeping data baharu dalam sys_user table

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
            //新增一条数据
            int i = jdbcTemplate.update("insert into sys_user(user_name, phone) values(?,?)", new String[]{"小王", "13100720084"});
            log.info("新增了" + i + "条数据");
        }
    }

    Jalankan hasil

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Ubah suai sekeping data dalam jadual sys_user

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
            //修改一条数据
            int i2 = jdbcTemplate.update("update sys_user set user_name = ? where id = 1", new String[]{"小张"});
            log.info("修改了" + i2 + "条数据");
        }
    }

    Jalankan hasil

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Padam sys_user Jadual data

    package com.gavin.boot;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.jdbc.core.JdbcTemplate;
    import java.util.List;
    import java.util.Map;
    
    @Slf4j
    @SpringBootTest
    class BootJdbcApplicationTests {
    
        @Autowired
        JdbcTemplate jdbcTemplate;
    
        @Test
        void contextLoads() {
            //删除一条数据
            int i3 = jdbcTemplate.update("delete from sys_user where id = ?", 1);
            log.info("删除了" + i3 + "条数据");
        }
    }

    Jalankan hasil

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Bagaimana SpringBoot menyepadukan JdbcTemplate

    Atas ialah kandungan terperinci Bagaimana SpringBoot menyepadukan JdbcTemplate. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    Kenyataan:
    Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam