Spring Boot提供了Spring jdbc template 来简化操作数据库的流程,下面是一个使用JdbcTemplate进行增删改查的示例:
1、首先,在Spring Boot的pom.xml文件中添加如下依赖:
org.springframework.boot
spring-boot-starter-jdbc
2、在application.properties中配置数据库连接信息:
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=123456
3、编写JdbcDemo.java:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
@Component
public class JdbcDemo {
@Autowired
private JdbcTemplate jdbcTemplate;
public void insert(String name) {
jdbcTemplate.update("insert into user (name) values (?)", name);
}
public void delete(int id) {
jdbcTemplate.update("delete from user where id=?", id);
}
public void update(User user) {
jdbcTemplate.update("update user set name=? where id=?", user.getName(), user.getId());
}
public User selectById(int id) {
return jdbcTemplate.queryForObject("select * from user where id=?", new Object[]{id},
(rs, rowNum) -> new User(rs.getInt("id"), rs.getString("name")));
}
}
4、编写测试类JdbcDemoTest.java:
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class JdbcDemoTest {
@Autowired
private JdbcDemo jdbcDemo;
@Test
public void test() {
// 插入一条数据
jdbcDemo.insert("Alice");
// 查询数据
User user = jdbcDemo.selectById(1);
System.out.println(user);
// 更新数据
user.setName("Bob");
jdbcDemo.update(user);
// 查询数据
user = jdbcDemo.selectById(1);
System.out.println(user);
// 删除数据
jdbcDemo.delete(1);
}
}
以上示例中,JdbcTemplate类提供了一系列方法,如update()、query()、queryForObject()等用于执行SQL语句,参数类型为JdbcTemplate一般采用@Autowired注解自动装配。Demo中演示了基本的增删改查操作。
最后,用Junit进行单元测试即可。