miércoles, 27 de octubre de 2021

Bases de datos con Payara Server

Se necesita lo siguiente:

  • Tener instalado el JDK versión 8 o superior.
  • Bases de datos:
    • Tener instalado MySql versión 5.7.24 o superior, en caso de MariaBD la versión 10.3.12 o superior
  • Tener instalado el servidor Payara Server versión 5 o superior.
  • Un IDE (Eclipse o NetBeans preferiblemente) para iniciar el servidor. (clic aquí para ver como)

Usar MySQL o MariaBD con Payara Server (JDBC Connection Pool)

PRIMER PASO:

Iniciar el servidor desde el IDE así como el servicio de la base de datos

Debe aparece el servicio iniciado:


Luego se debe acceder desde el navegador al administrador que es generalmente la ruta http://localhost:4848/


SEGUNDO PASO:

Dependiendo del SO se ingresa al CLI de Linux o PowerShell de Windows, ahí se debe navegar hasta la ubicación de la instalación del servidor, específicamente a la carpeta "bin", los pasos y comandos son:

  • Cambiar la ubicación a "bin": CD 'E:\Program Files (x86)\payara5\bin\'
  • Llamar al comando de administrador: ./asadmin
  • Agregar el driver de conección, se debe indicar la ruta donde tienen el JAR: add-library "D:\Mis Documentos\JAR\MySQL\mysql-connector-java-5.1.23-bin.jar"
  • Salir: exit
Windows PowerShell
Copyright (C) Microsoft Corporation. Todos los derechos reservados.

PS C:\Users\USER> CD 'E:\Program Files (x86)\payara5\bin\'
PS E:\Program Files (x86)\payara5\bin> ./asadmin
Use "exit" to exit and "help" for online help.
asadmin> add-library "D:\Mis Documentos\JAR\MySQL\mysql-connector-java-5.1.23-bin.jar"
Command add-library executed successfully.
asadmin> exit
Command multimode executed successfully.
PS E:\Program Files (x86)\payara5\bin>

TERCER PASO:

Reiniciar el servidor desde el IDE y volver a acceder al panel de administración WEB: http://localhost:4848/
Ubicarse en el menu lateral en "Resources" y acceder a "JDBC" y "JDBC Connection Pools", crear uno nuevo con el botón "new" y en la nueva ventana llenar los campos como se aprecia en la siguiente imagen.

  • A: Es el nombre de la conexión
  • B: Es el tipo de recurso
  • C: Es el nombre del proveedor

Presionar "next". Luego se debe completar algunos campos, aparecerán por defecto una gran cantidad de ellos, los puede borrar y colocar los siguientes

En estos campos se debe completar el nombre de la base de datos, para este caso es "blog", el usuario y contraseña (no se recomienda "root", pero para pruebas es válido), la ubicación que es "localhost" en este caso y el número de puerto.
Luego presionar finish, entrar a la conexión creada haciendo clic sobre su nombre en la lista y comprobar la conexión haciendo clic en "ping", el resultado debería ser: "Ping Succeeded"

Finalmente crear el recurso JDBC haciendo clic en "JDBC Resources" y luego en "new", completar los campos

Dar clic en "OK" y observar que se han agregado los dos componentes necesarios para las conexiones con bases de datos desde Payara Server

  • A: Es el nombre del recurso que será llamado luego por las aplicaciones
  • B: Es el JDBC pool al que hace referencia

Ahora el servidor se ha conectado exitosamente a una base de datos y puede cerrar el panel de administración

jueves, 9 de septiembre de 2021

Clase utilitaria DeString

  1. package util;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. public class DeString {
  5. public static Integer aInteger(String s) {
  6. Integer result = null;
  7. if (s != null) {
  8. try {
  9. result = Integer.valueOf(s);
  10. } catch (NumberFormatException e) {
  11. }
  12. }
  13. return result;
  14. }
  15. public static Double aDouble(String s) {
  16. Double result = null;
  17. if (s != null) {
  18. try {
  19. result = Double.valueOf(s);
  20. } catch (NumberFormatException e) {
  21. }
  22. }
  23. return result;
  24. }
  25. public static List<Integer> ids(String _ids) {
  26. List<Integer> list = new ArrayList<>();
  27. if (_ids != null) {
  28. String[] v_ids = _ids.split(",");
  29. for (String v_id : v_ids) {
  30. Integer id = aInteger(v_id);
  31. if (id != null) {
  32. list.add(id);
  33. } else {
  34. list = null;
  35. break;
  36. }
  37. }
  38. }
  39. return list;
  40. }
  41. /*Listas*/
  42. public static Integer[] aIntegerL(String[] s) {
  43. Integer[] result = null;
  44. if ((s != null) && (s.length > 0)) {
  45. result = new Integer[s.length];
  46. for (int i = 0; i < result.length; i++) {
  47. try {
  48. result[i] = Integer.valueOf(s[i]);
  49. } catch (NumberFormatException ex) {
  50. result = null;
  51. break;
  52. }
  53. }
  54. }
  55. return result;
  56. }
  57. public static Double[] aDoubleL(String[] s) {
  58. Double[] result = null;
  59. if ((s != null) && (s.length > 0)) {
  60. result = new Double[s.length];
  61. for (int i = 0; i < result.length; i++) {
  62. try {
  63. result[i] = Double.valueOf(s[i]);
  64. } catch (NumberFormatException ex) {
  65. result = null;
  66. break;
  67. }
  68. }
  69. }
  70. return result;
  71. }
  72. }