📅  最后修改于: 2023-12-03 15:01:05.840000             🧑  作者: Mango
H2是一个以JAVA语言编写的嵌入式数据库,它被设计成非常快速、紧凑、高效、低延迟和可靠。H2数据库可通过嵌入式模式或者服务器模式来运行,可以快速、方便地将其集成到Spring Boot框架中。Spring Boot是一个基于Spring框架的Java应用程序开发框架,可用于构建独立的、基于生产的Spring应用程序。
在你的Spring Boot项目中添加下面的依赖,即可使用H2数据库:
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.4.197</version>
</dependency>
在Spring Boot的配置文件中添加以下配置,即可使用H2数据库:
spring.h2.console.enabled = true
spring.h2.console.path = /h2-console
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.h2.console.path
属性可用于指定控制台路径,spring.datasource.url
属性用于指定数据库URL,这里使用的是内存数据库,spring.datasource.driverClassName
属性指定JDBC驱动程序,spring.datasource.username
和spring.datasource.password
属性指定数据库的用户名和密码。
在Spring Boot应用程序中使用H2数据库时,可以使用嵌入式模式。在嵌入式模式下,应用程序可以使用相同的JVM进程运行H2数据库。以下是使用嵌入式模式的示例:
@Configuration
public class H2DatabaseConfiguration {
@Bean
public DataSource dataSource() {
EmbeddedDatabaseBuilder builder = new EmbeddedDatabaseBuilder();
return builder.setType(EmbeddedDatabaseType.H2)
.addScript("classpath:create-db.sql")
.build();
}
}
在上面的代码中,我们定义了一个dataSource()
方法,它返回一个嵌入式H2数据库。在这个示例中,我们使用的是EmbeddedDatabaseType.H2
类型,并且在addScript()
中指定了要运行的SQL脚本的位置。
在服务器模式下,应用程序连接到运行在不同JVM进程上的H2数据库。为了使用服务器模式,请按照以下步骤操作:
spring.datasource.url=jdbc:h2:tcp://localhost:9092/testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
在以上示例中,我们使用了TCP协议连接到H2数据库服务器,并指定了端口号为9092。
通过将spring.h2.console.enabled
属性设置为true
,可以启用H2数据库的Web控制台。Web控制台可用于执行SQL查询、插入、更新和删除操作,还可以查看表、索引、序列和触发器等信息。可以通过在浏览器中输入URI路径/h2-console
来访问Web控制台。
H2数据库是一个高效且易于使用的数据库,可用于构建Spring Boot应用程序。借助H2数据库,可以在应用程序中启用嵌入式数据库和服务器数据库,并使用可视化控制台进行管理和操作。