一、PostgreSQL是什么?

PostgreSQL是一款功能强大、可靠性高且可扩展的开源关系型数据库管理系统。它支持事务、高级查询、扩展性、用户定义类型和函数,具有备份恢复、安全性和并发控制等功能。PostgreSQL适用于各种规模和复杂度的应用程序,跨平台运行,并具有活跃的社区支持。


二、安装PostgreSQL

1、拉取PostgreSQL镜像:

docker pull postgres:latest

执行过程:

2.创建挂载卷

创建本地挂载卷进行持久化

mkdir /usr/local/docker
mkdir /usr/local/docker/postgresql
mkdir /usr/local/docker/postgresql/data

执行过程:

3、启动容器

docker run --name postgres -e POSTGRES_PASSWORD=你要设置的密码 -p 5432:5432 -v /usr/local/postgresql/data:/var/lib/postgresql/data -d postgres:latest

执行结果

4、测试与百灵连接的连通性

三、整合SpringBoot

1、搭建项目

2、添加pom依赖(使用mybatis-plus)

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.ruoyi.pgsql</groupId>
    <artifactId>pgsql-test-day0923</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <lombok.version>1.18.24</lombok.version>
        <mybatis-plus.version>3.4.1</mybatis-plus.version>
        <mybatis-spring-boot.version>3.0.3</mybatis-spring-boot.version>
    </properties>
    <!-- Spring Boot 父依赖 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.2.0</version>
        <relativePath/>
    </parent>

    <dependencies>
        <!-- mybatis-plus -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>
        <!-- lombok 简化代码开发 -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lombok.version}</version>
        </dependency>

        <!-- Web 依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- 数据访问(二选一) -->
        <!-- 选项1:Spring Data JPA -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>

        <!-- 选项2:MyBatis(如需使用 MyBatis 替代 JPA) -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>${mybatis-spring-boot.version}</version>
        </dependency>


        <!-- PostgreSQL 驱动 -->
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <scope>runtime</scope>
        </dependency>

        <!-- 测试依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>

3、创建sql(用于测试)

4、添加配置文件

spring:
  # 数据库配置
  datasource:
    driver-class-name: org.postgresql.Driver
    url: jdbc:postgresql://192.168.80.131:5432/springboot_pg  # 格式:jdbc:postgresql://主机:端口/数据库名
    username: postgres                                   # 数据库用户名
    password: 123456                               # 数据库密码
    hikari:
      maximum-pool-size: 10  # 连接池最大连接数(可选配置)

  # JPA 配置(若使用 JPA)
  jpa:
    hibernate:
      ddl-auto: update  # 自动创建/更新表结构(create: 每次启动重建表;update: 保留数据更新表;none: 关闭自动DDL)
    properties:
      hibernate:
        dialect: org.hibernate.dialect.PostgreSQLDialect  # 指定 PostgreSQL 方言
        format_sql: true  # 格式化 SQL 日志
    show-sql: true  # 打印执行的 SQL 语句

# MyBatis配置
mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.ruoyi.pgsql.domain

# 服务端口(可选,默认 8080)
server:
  port: 8080

5、编写添加测试

6、使用PostMan进行测试

7、测试结果

以上就是本章关于 Docker 安装 PostgreSQL及整合SpringBoot 的完整教程,如果对您有帮助,欢迎点赞收藏。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐