SpringBoot依赖之PostgreSQL Driver集成
概念PostgreSQL Driver
PostgreSQL 是一个强大、开源的对象关系型数据库管理系统(ORDBMS),适用于大数量处理、复杂的应用程序、数据分析和BI、金融以及电子商务领域。
PostgreSQL Driver
- 依赖名称: PostgreSQL Driver
- 功能描述: A JDBC and R2DBC driver that allows Java programs to connect to a PostgreSQL database using standard, database independent Java code.
- 英文释义:JDBC 和 R2DBC 驱动程序,允许 Java 程序使用标准的、独立于数据库的 Java 代码连接到 PostgreSQL 数据库。
我们在 IntelliJ IDEA 中创建 Spring Boot 项目并集成 PostgreSQL 数据库的步骤如下:
1. 创建 Spring Boot 项目
- 启动 IntelliJ IDEA,点击
New Project
,选择Spring Initializr
,然后点击Next
。
项目信息可参考之前文章配置,也可以采用IDEA的默认配置。目前我的Springboot 版本3.3,jdk版本17。项目依赖包如上图所示,根据需要引用。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2. 配置 PostgreSQL 数据库
-
在 PostgreSQL 中创建数据库:
-
打开 PostgreSQL 数据库客户端(如 pgAdmin 或命令行工具),执行以下命令创建一个新数据库:
CREATE DATABASE springboot_db;
-
-
配置
application.properties
文件:-
在
src/main/resources/application.properties
文件中添加以下配置:spring.datasource.url=jdbc:postgresql://localhost:5432/springboot_db spring.datasource.username=your_username spring.datasource.password=your_password spring.datasource.driver-class-name=org.postgresql.Driver spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
-
这些是数据库连接中最核心的几个参数,根据实际情况将
your_username
和your_password
替换为 PostgreSQL 数据库的用户名和密码。
-
3. 创建实体类和数据库操作
-
创建实体类:
-
具体的包目录可以参考我这个
package com.dependencies.springdatajpapostgresql.model; import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import lombok.Data; /** * @author zhizhou 2024/8/28 09:08 */ @Data @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; private String email; }
-
-
创建 Repository 接口:
package com.dependencies.springdatajpapostgresql.repository; import com.dependencies.springdatajpapostgresql.model.User; import org.springframework.data.jpa.repository.JpaRepository; /** * @author zhizhou 2024/8/28 09:09 */ public interface UserRepository extends JpaRepository<User, Long> { }
-
创建控制器UserController:
package com.dependencies.springdatajpapostgresql.controller; import com.dependencies.springdatajpapostgresql.model.User; import com.dependencies.springdatajpapostgresql.repository.UserRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Optional; /** * @author zhizhou 2024/8/28 09:10 */ @RestController @RequestMapping("/users") public class UserController { @Autowired private UserRepository userRepository; // 1. 获取所有用户 @GetMapping public List<User> getAllUsers() { return userRepository.findAll(); }
4. 运行项目并测试
-
运行 Spring Boot 应用:
- 右键点击
SpringDataJpaPostgresqlApplication
主类,选择Run
。
- 右键点击
-
测试 API:
- 使用 Postman 或浏览器也可以,类似请求工具,访问
http://localhost:8080/users
来测试 API。
- 使用 Postman 或浏览器也可以,类似请求工具,访问
总结
通过这些步骤,我们已经在 IntelliJ IDEA 中成功创建了一个 Spring Boot 项目,并集成了 PostgreSQL 数据库。该项目包括基本的数据库操作和 RESTful API,可以根据需要进行扩展和优化。