Skip to content

Adaptadores

La capa de adaptadores aísla ciclo de vida de conexiones, ejecución de consultas, transacciones y health checks.

import { connectionDB } from 'jsorm';
import { pgAdapter } from 'jsorm-pg';
import { mysqlAdapter } from 'jsorm-mysql';
import { sqliteAdapter } from 'jsorm-sqlite';
const db = connectionDB({
databases: {
main: pgAdapter({
name: 'main',
connectionString: process.env.DATABASE_URL!,
}),
analytics: mysqlAdapter({
name: 'analytics',
host: process.env.DB_HOST!,
user: process.env.DB_USER!,
password: process.env.DB_PASSWORD!,
database: process.env.DB_NAME!,
}),
cache: sqliteAdapter({
name: 'cache',
file: ':memory:',
}),
},
default: 'main',
});

Si tu aplicación ya administra pools o transacciones, puedes inyectar tu propio adaptador usando los contratos del core.

  1. Reutiliza adaptadores en lugar de recrearlos por request.
  2. Usa use() o with() para operaciones multi-base de datos.
  3. Mantén adaptadores personalizados alineados con la metadata y validación oficial.