将架构数据库与R2DBC中的数据库进行映射

问题描述

我从Spring Boot + WebFlux + Postgresql项目开始。

有必要执行库模式的映射,但是在@Table批注中不存在模式信息,想一想我想了解如何对包含的表进行映射在架构中。

select id,description from myschema.mytable;

映射

package br.com.myschema.example;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.relational.core.mapping.Table;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table
public class MyTableEntity {

    @Id
    private Long id;

    private String description;
}

如何为我正在访问所有者myschema的spring-data定义?

解决方法

尝试使用ConnectionFactoryInitializer 执行初始脚本以选择要使用的架构。

CREATE SCHEMA IF NOT EXISTS tenant1 ; 
SHOW search_path;
SET search_path  TO tenant1;