Spring의 데이터베이스 작업은 더 깊은 수준의 jdbc에 캡슐화되어 있으며 JdbcTemplate은 데이터베이스 작업을 위해 Spring에서 제공하는 편리한 도구입니다. JdbcTemplate을 사용하면 데이터베이스에서 데이터 삽입, 업데이트, 삭제, 검색과 같은 모든 데이터베이스 작업을 수행할 수 있으며 jdbc를 직접 사용하여 발생하는 지루한 코딩을 효과적으로 피할 수 있습니다.
파일을 클릭하고 다음을 클릭하세요
추가하려는 종속성을 선택하면 프로젝트가 생성될 때 자동으로 Maven에 추가됩니다. 그런 다음
다음을 클릭하세요 프로젝트 이름을 입력하고 완료
JDBC 종속성 가져오기
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jdbc</artifactId> </dependency>
데이터베이스 드라이버 가져오기
여기서 사용하는 MySQL 데이터베이스는 MySQL 데이터베이스 드라이버를 가져오세요<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.42</version> </dependency>구성 파일 수정
여기서 yml 형식 구성 파일을 사용합니다
spring: datasource: url: jdbc:mysql://localhost:3306/test?characterEncoding=utf8 username: root password: admin driver-class-name: com.mysql.jdbc.Driver
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); }결과 실행 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 테이블의 모든 데이터 쿼리
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 + "条数据"); } }
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
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을 통합하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!