📜  Spring Boot H2数据库(1)

📅  最后修改于: 2023-12-03 15:05:15.716000             🧑  作者: Mango

Spring Boot H2数据库

在使用Spring Boot进行Web开发时,经常需要使用一个内嵌的轻量级数据库进行测试和快速开发。H2数据库是一个纯Java开发的关系型数据库,以内存数据库的形式运行,支持SQL和JDBC标准,并支持很多高级特性,如外键约束、索引等。

Spring Boot集成了H2数据库,可以使用H2作为Spring Boot开发中的数据库。

添加H2依赖

在pom.xml文件中添加H2的依赖,如下所示:

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>

scope设置为runtime,表示仅在运行时使用,而不是在编译时使用。

配置H2数据库

application.properties文件中添加以下配置:

spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=

spring.h2.console.enabled属性用于打开H2控制台,用于调试和测试。

spring.datasource.url属性指定了H2数据库的连接URL,此处是指在内存中使用testdb数据库,如果需要将数据保存到数据库文件中,可以使用jdbc:h2:~/test这样的URL。

使用H2数据库

在代码中可以直接使用DataSource对象访问H2数据库,例如:

@Autowired
private DataSource dataSource;

使用JdbcTemplate可以方便地操作H2数据库,例如:

@Autowired
private JdbcTemplate jdbcTemplate;

public void createUser(String name, int age) {
    String sql = "INSERT INTO user(name, age) VALUES(?, ?)";
    jdbcTemplate.update(sql, name, age);
}
总结

使用H2数据库作为Spring Boot的内嵌数据库是非常方便和轻量级的,可以用于快速开发和单元测试。当然如果需要用于生产环境,还需要进一步考虑数据持久化和高可用性等问题。