Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

404
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!