>  기사  >  Java  >  SpringBoot가 JdbcTemplate을 통합하는 방법

SpringBoot가 JdbcTemplate을 통합하는 방법

王林
王林앞으로
2023-05-20 21:16:181313검색

    머리말

    Spring의 데이터베이스 작업은 더 깊은 수준의 jdbc에 캡슐화되어 있으며 JdbcTemplate은 데이터베이스 작업을 위해 Spring에서 제공하는 편리한 도구입니다. JdbcTemplate을 사용하면 데이터베이스에서 데이터 삽입, 업데이트, 삭제, 검색과 같은 모든 데이터베이스 작업을 수행할 수 있으며 jdbc를 직접 사용하여 발생하는 지루한 코딩을 효과적으로 피할 수 있습니다.

    SpringBoot 프로젝트 초기화

    IDEA를 사용하여 프로젝트 생성

    파일을 클릭하고 다음을 클릭하세요

    SpringBoot가 JdbcTemplate을 통합하는 방법

    추가하려는 종속성을 선택하면 프로젝트가 생성될 때 자동으로 Maven에 추가됩니다. 그런 다음

    다음을 클릭하세요

    SpringBoot가 JdbcTemplate을 통합하는 방법

    프로젝트 이름을 입력하고 완료

    SpringBoot가 JdbcTemplate을 통합하는 방법


    JDBC 종속성 가져오기

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

    데이터베이스 드라이버 가져오기SpringBoot가 JdbcTemplate을 통합하는 방법

    여기서 사용하는 MySQL 데이터베이스는 MySQL 데이터베이스 드라이버를 가져오세요

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

    구성 파일 수정

    SpringBoot가 JdbcTemplate을 통합하는 방법여기서 yml 형식 구성 파일을 사용합니다

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

    데이터베이스 sys_user 테이블 구조

    테스트 클래스 코드

    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() {
            //获取sys_user表数据量
            Long aLong = jdbcTemplate.queryForObject("select count(*) from sys_user", Long.class);
            log.info("记录总数:{}", aLong);
    }

    결과 실행

    SpringBoot가 JdbcTemplate을 통합하는 방법

    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() {
            //获取sys_user表一条数据
            Map<String, Object> map = jdbcTemplate.queryForMap("select * from sys_user where id = 1");
            log.info("map数据为:" +  map);
        }
    }

    결과 실행

    sys_user 테이블의 모든 데이터 쿼리SpringBoot가 JdbcTemplate을 통합하는 방법

    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);
        }
    }

    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 i = jdbcTemplate.update("insert into sys_user(user_name, phone) values(?,?)", new String[]{"小王", "13100720084"});
            log.info("新增了" + i + "条数据");
        }
    }

    실행 결과

    SpringBoot가 JdbcTemplate을 통합하는 방법

    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 + "条数据");
        }
    }

    실행 닝 results

    SpringBoot가 JdbcTemplate을 통합하는 방법

    SpringBoot가 JdbcTemplate을 통합하는 방법

    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 i3 = jdbcTemplate.update("delete from sys_user where id = ?", 1);
            log.info("删除了" + i3 + "条数据");
        }
    }

    실행 결과

    SpringBoot가 JdbcTemplate을 통합하는 방법

    SpringBoot가 JdbcTemplate을 통합하는 방법

    위 내용은 SpringBoot가 JdbcTemplate을 통합하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제