Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

406
Visualizações
Creación de fuente de datos dinámicamente en la aplicación SpringBoot OpenJPA (Implementación de tenencia múltiple con OpenJPA)

Estoy creando una aplicación Springboot con OpenJPA.

Mi requisito es que necesito conectarme a múltiples fuentes de datos dinámicamente y las credenciales de la fuente de datos se obtienen en tiempo de ejecución llamando a algunos puntos finales de descanso.

Aquí está la clase de controlador:

 @RestController public class StationController { @Autowired BasicDataSource dataSource;

Tengo un servicio que me devuelve el jdbc_url dependiendo del nombre del cliente:

 public String getDSInfo(String customername){ // code to get the datasource info (JDBC URL) }

Mis preguntas son:

  1. ¿Hay alguna manera en la que pueda crear fuentes de datos en tiempo de ejecución obteniendo las credenciales de la fuente de datos llamando a algún otro servicio (que toma la identificación del cliente y devuelve la fuente de datos específica del cliente)?

  2. Dado que mi aplicación es una aplicación basada en la web, muchos clientes accederán a ella al mismo tiempo, entonces, ¿cómo crear y manejar tantas fuentes de datos diferentes?

NOTA:

  1. El código obtendrá información sobre la fuente de datos específica del cliente solo activando algún servicio en el tiempo de ejecución, por lo que no puedo codificar las credenciales de la fuente de datos en el archivo de configuración XML.

  2. Encontré algunas implementaciones con Hibernate pero estoy usando Springboot con OpenJPA. Así que necesito ayuda específica de OpenJPA.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Parece que desea una solución multiusuario.

Las fuentes de datos son fáciles de crear mediante programación, solo use un DataSourceBuilder con los detalles de su conexión extraídos de una fuente central (por ejemplo, una base de datos de configuración central o un servidor Spring Config).

Luego, deberá buscar un marco de múltiples inquilinos para vincular las fuentes de datos a los clientes.

Mira aquí:

https://www.youtube.com/watch?v=nBSHiUTHjWA

y aquí

https://dzone.com/articles/multi-tenancy-using-jpa-spring-and-hibernate-part

El video es largo pero bueno. Básicamente, tiene un mapa de fuentes de datos de clientes (de la memoria) que permite que un administrador de entidades recoja una fuente de datos del mapa mediante el uso de un alcance de resorte personalizado con alcance de subproceso de "cliente" que se establece cuando un usuario para un cliente en particular de alguna manera inicia sesión en tu aplicación

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda