diff --git a/README.md b/README.md index 3caccad..85c3cdd 100644 --- a/README.md +++ b/README.md @@ -38,4 +38,68 @@ Si necesitas conectarte a otros tipos de bases de datos (ej. Oracle), debes agre ```b4x ' Este es el nombre del archivo .jar, en este caso "C:\Ruta\Adicional\ojdbc11.jar" -#AdditionalJar: ojdbc11 \ No newline at end of file +#AdditionalJar: ojdbc11 +```` + +Al compilar, el driver se incluirá en el `.jar` final del servidor, por lo que no será necesario copiarlo por separado al directorio de producción. + +## 4\. Uso del Handler Clásico (Para Clientes B4X) + +Este handler mantiene la compatibilidad con `DBRequestManager`. La selección de la base de datos se realiza dinámicamente a través de la URL. + + * Para `config.properties` =\> `http://tu-dominio.com:8090` + * Para `config.DB2.properties` =\> `http://tu-dominio.com:8090/DB2` + * Para `config.DB3.properties` =\> `http://tu-dominio.com:8090/DB3` + * Para `config.DB4.properties` =\> `http://tu-dominio.com:8090/DB4` + +## 5\. Uso del `DB1JsonHandler` (Para Clientes Web) + +Este handler es para clientes que se comunican vía JSON. + +### 5.1. Endpoint y Métodos + +Las peticiones van al endpoint `/DBJ` y deben incluir un parámetro `j` con el JSON. Soporta `GET` y `POST`. + +**Ejemplo con `GET`:** +`http://tu-dominio.com:8090/db1json?j={"dbx":"DB2","query":"get_user","exec":"executeQuery","params":{"par1":"CDAZA"}}` + +### 5.2. Formato del Parámetro `j` + +```json +{ + "exec": "executeQuery", + "query": "nombre_del_comando_sql", + "dbx": "DB1", + "params": { + "par1": "valor1", + "par2": 123 + } +} +``` + + * `exec`: `"executeQuery"` (para `SELECT`) o `"executeCommand"` (para `INSERT`, `UPDATE`, etc.). + * `query`: Nombre del comando SQL en el archivo de configuración. + * `dbx` (opcional): La llave de la BD (`DB1`, `DB2`, etc.). Si se omite, usa `DB1`. + * `params` (opcional): Objeto con los parámetros. + +### 5.3. ¡Importante\! Envío de Parámetros + +El servidor ordena las claves de los parámetros alfabéticamente. Para asegurar el orden correcto, **nombra las claves secuencialmente**: `"par1"`, `"par2"`, etc. + +> **Nota para más de 9 parámetros**: Usa un cero inicial para mantener el orden (`"par01"`, `"par02"`, ..., `"par10"`). + +### 5.4. Respuestas JSON + +Las respuestas siempre incluyen `"success": true` o `"success": false`, con los datos en `"result"` o el error en `"error"`. + +## 6\. Administración del Servidor + +Se pueden ejecutar comandos de gestión directamente desde un navegador. + + * **Verificar Estado**: `http://tu-dominio.com:8090/test` + * **Recargar Configuración**: `http://tu-dominio.com:8090/manager?command=reload` + (Vuelve a leer todos los archivos `config.*.properties` sin reiniciar el servidor). + * **Reiniciar Servidor (Estándar)**: `http://tu-dominio.com:8090/manager?command=rsx` + (Ejecuta los scripts `start.bat`, `start2.bat` y `stop.bat`). + * **Reiniciar Servidor (con PM2)**: `http://tu-dominio.com:8090/manager?command=rpm2` + (Ejecuta `reiniciaProcesoPM2.bat` y asume que el nombre del proceso es "RDC-Multi". Modificar el `.bat` si el nombre es diferente).