📅  最后修改于: 2023-12-03 15:05:15.825000             🧑  作者: Mango
H2数据库是一个Java编写的嵌入式关系型数据库,可以按文件存储或者以内存模式运行。它具有轻量级,速度快,易于使用等特点,适合在开发和测试阶段使用。
Spring Boot是一个快速创建Spring应用程序的框架,它通过自动配置和约定优于配置的原则,使开发者可以快速地创建一个可运行的Spring应用程序。
在Spring Boot中使用H2数据库可以极大地提高开发效率,同时可以在单元测试中使用,方便进行数据的初始化和清理。
在项目的pom.xml文件中添加以下依赖:
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
在Spring Boot应用程序的配置文件(application.properties或application.yml)中配置H2数据源:
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
spring.h2.console.enabled=true
spring.h2.console.path=/h2-console
这里配置了一个名为“testdb”的内存数据库,并启用了H2控制台。
接下来创建实体类,并使用JPA进行持久化操作。
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue(strategy= GenerationType.AUTO)
private Long id;
@Column(name = "name")
private String name;
@Column(name = "age")
private Integer age;
// getters and setters
}
创建一个继承自JpaRepository的Repository。
public interface UserRepository extends JpaRepository<User, Long> {
}
创建一个Controller类,用于演示添加用户和查询用户的功能。
@RestController
@RequestMapping("/users")
public class UserController {
@Autowired
private UserRepository userRepository;
@PostMapping
public User addUser(@RequestBody User user) {
return userRepository.save(user);
}
@GetMapping
public List<User> getUsers() {
return userRepository.findAll();
}
}
启动Spring Boot应用程序,并可以通过访问http://localhost:8080/h2-console 进入H2数据库的Web控制台,查看数据。
使用Spring Boot和H2数据库可以快速方便地进行开发和测试。它们的优点在于简单易用,但是在实际生产环境中,还需要更强大的数据库支持。