飞道的博客

【springboot】19、数据库操作

311人阅读  评论(0)

基本说明

这篇文章介绍如何在springboot的项目中进行数据库的连接,完成数据库操作。

默认数据源HikariDataSource

HikariDataSource是springboot的默认数据源,性能十分优秀,我们如果想要进行数据库操作,需要引入相应的starter

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

在这个starter里面就有关于HikariDataSource的引入

Spring Boot 不知道项目要操作 Mysql 还是 Oracle,或者是其他数据库 ,所以需要在 pom.xml 指定导入数据库驱动

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

接下来就是配置数据库的基本信息了,我们在配置文件yaml中进行配置,数据库的配置信息是基于DataSourceProperties这个类的

下面就是该类的一些字段

我们需要配置的就4个,就是用户名,密码,驱动类名和url

把这些配置完成之后我们就可以直接使用了,我们使用JdbcTemplate来测试一下
下面是我创建的一张表,里面有3条信息,现在就是要使用JdbcTemplate完成该表的查询

测试代码如下

@Data
public class People {
   
    private Integer id;
    private String name;
    private String gender;
    private Integer age;
}
@SpringBootTest
public class ApplicationTest {
   

    @Resource
    private JdbcTemplate jdbcTemplate;

    @Test
    public void t1() {
   
        BeanPropertyRowMapper<People> rowMapper = new BeanPropertyRowMapper<>(People.class);
        String sql = "select * from people";
        List<People> peopleList = jdbcTemplate.query(sql, rowMapper);
        System.out.println("\n----------------start----------------");
        System.out.println(Objects.requireNonNull(jdbcTemplate.getDataSource()).getClass());
        for (People people : peopleList) {
   
            System.out.println(people);
        }
        System.out.println("-----------------end-----------------\n");

    }
}

 

运行代码,查看控制台输出

可以发现已经完成了查询,也就是说明数据库的连接已经没有问题了。还可以看见我们springboot使用的默认数据源确实是HikariDataSource。

切换数据源为Druid

上面我们使用的是默认数据源,这里我就来介绍如何进行切换,以Druid为例子,首先我们现需要引入druid的相关依赖

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.15</version>
        </dependency>

然后创建一个配置类,在这个类里面注入一个DruidDataSource

@Configuration
public class DruidConfig {
   

    @ConfigurationProperties("spring.datasource")
    @Bean
    public DataSource dataSource(){
   
        return new DruidDataSource();
    }
}

@ConfigurationProperties(“spring.datasource”)这行代码的意思就是DruidDataSource要去读取配置文件中关于spring.datasource信息,配置文件内容如下

这样配置之后,我们的数据源就已经是Druid了,还是运行上面的测试代码,查看控制台输出

可以发现数据源已经切换为Druid了。


转载:https://blog.csdn.net/m0_51545690/article/details/127920165
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场