下面是Spring Boot使用JdbcTemplate访问数据库的完整攻略。
一、添加JDBC和数据库驱动
首先,需要在Spring Boot项目中添加JDBC依赖以及相关的数据库驱动。在pom.xml
文件中添加以下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
<exclusions>
<exclusion>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.mysql.jdbc</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
上述依赖包含了Spring Boot JDBC的起步依赖,以及MySQL数据库驱动。
二、配置JdbcTemplate
在Spring Boot项目中,可以使用JdbcTemplate
类访问数据库。首先,需要在项目配置文件application.properties
中,设置数据库的连接信息,例如:
spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
接下来,在Spring Boot项目中创建JdbcTemplate
实例,如下所示:
@Configuration
public class DatabaseConfig {
@Autowired
private DataSource dataSource;
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(dataSource);
}
}
通过@Configuration
注解,声明一个Java配置类,通过@Autowired
注解将DataSource
对象注入到创建的JdbcTemplate
中。@Bean
注解表示这是一个容器化的Bean,可以被Spring管理。
三、使用JdbcTemplate执行SQL语句
有了JdbcTemplate
实例,就可以使用它来查询、插入、更新和删除数据库中的数据。以下是两个示例:
查询示例
public List<User> getAllUsers() {
String sql = "SELECT * FROM users";
return jdbcTemplate.query(sql, new UserRowMapper());
}
private static final class UserRowMapper implements RowMapper<User> {
public User mapRow(ResultSet rs, int rowNum) throws SQLException {
User user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setAge(rs.getInt("age"));
return user;
}
}
通过query()
方法,执行SQL查询语句。该方法需要传入一个SQL语句和一个RowMapper
对象。RowMapper
用于将查询结果映射到Java对象中。
插入示例
public void addUser(User user) {
String sql = "INSERT INTO users(name, age) VALUES(?, ?)";
jdbcTemplate.update(sql, user.getName(), user.getAge());
}
通过update()
方法,执行SQL插入语句。该方法需要传入一个SQL语句和一个可变参数列表。update()
方法会使用可变参数列表填充SQL语句中的占位符。
到此,我们已经学习了如何在Spring Boot项目中使用JdbcTemplate
访问数据库。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring boot 使用JdbcTemplate访问数据库 - Python技术站