SpringBoot利用JdbcTemplate连接MySQL示例

4 下载量 169 浏览量 更新于2024-09-02 收藏 47KB PDF 举报
在SpringBoot项目中,利用JdbcTemplates访问MySQL数据库是一种常见的数据操作方式。JdbcTemplates是Spring JDBC封装的一种工具类,它简化了JDBC的使用,提高了代码的可读性和可维护性。本文将详细介绍如何在Spring Boot应用中设置和使用JdbcTemplates来执行SQL查询,包括数据的增删改查操作。 首先,确保环境准备如下: 1. Java版本:建议使用Java Development Kit (JDK) 1.8或更高版本,因为Spring Boot与Java 8有良好的兼容性。 2. Maven版本:Maven 3.0或以上版本,用于管理项目的构建和依赖。 3. IDE:推荐使用IntelliJ IDEA或Eclipse等开发工具,它们有很好的Spring Boot支持。 4. MySQL数据库:安装并配置MySQL数据库服务器,至少需要一个可用的数据库实例。 在数据库方面,我们需要创建一个名为`account`的表,用于存储用户信息,包括id(主键)、name和money字段。创建表的SQL语句如下: ```sql CREATE TABLE `account` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(20) NOT NULL, `money` double DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; ``` 接下来,我们需要在Spring Boot项目中引入必要的依赖。在`pom.xml`文件中添加以下内容: ```xml <dependencies> <!-- Spring Boot starter for JDBC --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!-- MySQL connector for Java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency> <!-- Druid database connection pool (可选,提供数据库连接管理) --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.29</version> </dependency> </dependencies> ``` 启用web支持,并添加Spring Boot的自动配置: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> ``` 然后,创建一个配置类,如`DatabaseConfig`,来配置数据源和JdbcTemplate: ```java @Configuration public class DatabaseConfig { @Value("${spring.datasource.url}") private String url; @Value("${spring.datasource.username}") private String username; @Value("${spring.datasource.password}") private String password; @Bean public DataSource dataSource() { DriverManagerDataSource dataSource = new DriverManagerDataSource(); dataSource.setDriverClassName("com.mysql.cj.jdbc.Driver"); dataSource.setUrl(url); dataSource.setUsername(username); dataSource.setPassword(password); return dataSource; } @Bean public JdbcTemplate jdbcTemplate(DataSource dataSource) { return new JdbcTemplate(dataSource); } } ``` 在上面的配置中,`url`、`username`和`password`是根据实际的数据库配置来获取的,这里假设它们已经配置在application.properties或application.yml文件中。 有了JdbcTemplate bean后,你可以直接在业务层使用它进行数据库操作。例如,插入一条新用户记录: ```java @Autowired private JdbcTemplate jdbcTemplate; public void insertUser(String name, Double money) { String sql = "INSERT INTO account (name, money) VALUES (?, ?)"; jdbcTemplate.update(sql, name, money); } ``` 执行查询操作,如获取所有账户信息: ```java public List<Account> getAllAccounts() { String sql = "SELECT * FROM account"; return jdbcTemplate.query(sql, new Object[0], new BeanPropertyRowMapper(Account.class)); } ``` 通过这种方式,SpringBoot与JdbcTemplates结合,使得数据库操作变得简单易用,同时也方便了异常处理和事务管理。这在日常的Spring Boot项目开发中是非常实用的。