springboot2.2.13整合pgsql
时间: 2024-09-19 21:16:54 浏览: 64
Spring Boot 2.2.13 中整合 PostgreSQL 数据库,主要包括以下几个步骤:
1. **添加依赖**:
在项目的 `pom.xml` 或者 Gradle build 文件中,添加 Spring Data JPA 和 PostgreSQL JDBC 驱动的依赖:
```xml
<!-- Maven -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
<!-- Gradle (Kotlin) -->
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.postgresql:postgresql")
```
2. **配置数据库**:
在 `application.properties` 或 `application.yml` 中配置数据库连接信息,如 URL、用户名、密码等:
```properties
spring.datasource.url=jdbc:postgresql://localhost:5432/mydb
spring.datasource.username=myuser
spring.datasource.password=mypassword
spring.jpa.hibernate.ddl-auto=update
```
`- jpa.hibernate.ddl-auto` 设置为 `update` 表示每次应用启动时都会自动更新数据库结构。
3. **创建实体类**:
创建一个或多个 `@Entity` 注解的 Java 类来表示数据库表结构。比如:
```java
@Entity
public class MyEntity {
@Id
private Long id;
private String name;
// getters and setters...
}
```
4. **配置数据源和JPA**:
如果使用 `application.yml`,可以在 `spring` 区域下配置:
```yaml
data:
jpa:
properties:
hibernate:
dialect: org.hibernate.dialect.PostgreSQLDialect
```
5. **启用扫描**:
如果实体类不在默认的扫描包中,记得在 `Application` 类里启用扫描:
```java
@EnableJpaRepositories(basePackages = "com.example.myapp.repository")
@ComponentScan(basePackages = "com.example.myapp")
public class Application { ... }
```
6. **编写Repository接口**:
为每个实体类创建对应的 Repository 接口,Spring Data JPA 将会生成 CRUD 方法。例如:
```java
public interface MyEntityRepository extends JpaRepository<MyEntity, Long> {}
```
阅读全文