Hola,

Si en algún momento están realizando la compilación de un proyecto con gradle y no les compila correctamente mostrando el error:

Could not initialize class org.codehaus.groovy.runtime.InvokerHelper

Esto se debe, a que posiblemente la versión del JDK que está utilizando para la compilación del proyecto no posee la dependencia groovy, para solucionar esto se debe actualizar la versión del JDK a una versión superior o más reciente liberada por Oracle.


En este enlace: https://www.oracle.com/java/technologies/ se puede buscar una versión de JDK más actualizada para instalarla y solucionar este inconveniente.

Hola,

Para, obtener el nombre del modelo de un equipo ASUS con sistema operativo Windows 10 y toda la información del equipo, se debe ingresar el comando "DXDIAG" sin las comillas dobles, en la barra de búsqueda de Windows.

Así el nombre del modelo se mostrará debajo del campo Modelo de sistema.
Hola,
Si son de Cali o no, estoy seguro que muchos de ustedes han escuchado hablar sobre Jovita o la Reina Jovita y si por casualidades de la vida han pasado sobre la calle 5ta con carrera 15, han visto la gran estatua de una mujer con un vestido de tonalidades azules, un ramo de flores en la mano y maquillada hasta mas no poder, con ustedes les comparto la historia de la Reina de reinas Jovita Feijoo de Cali ve.

Jovita Becerra Feijóo “Jovita” es un personaje de la cultura popular caleña, nació en Palmira (Valle del Cauca) el 6 de junio de 1910 y murió en Cali el día 15 de julio de 1970, hace parte del llamado Cali Viejo. Fue también conocida en la ciudad como Reina de Reinas.

Biografía
Jovita nace en el corregimiento del Bolo Alizal, municipio de Palmira, Departamento del Valle del Cauca, Colombia en 1910. Sus Padres, Pacífico Becerra y Joaquina Feijóo. Tuvo cuatro hermanas y nunca se casó ni tuvo hijos. Sus estudios fueron básicos en la escuela María Auxiliadora de Palmira. Vivió la mayor parte de su vida en la ciudad de Cali.

Fue un personaje reconocido por su carisma, civismo, elegancia en el vestir y la locura de creerse ¨Reina¨. Fue nombrada Reina de la simpatía en un popular programa de radio transmitido en vivo desde el centro de Cali en la plaza de Caicedo. En dicho programa el participante tenía que cantar una canción y si desafinaba se activaba el sonido de los perros; se dice que Jovita desafino y debido a ello le pusieron el sonido de los perros, pero Jovita persistió sin importar cuantas veces ocurriera.

Después de esto fue coronada Reina de la simpatía por los estudiantes en la Universidad del Valle. Jovita se tomó muy en serio estas dos "coronaciones", portándose como una auténtica reina, encabezando todos los desfiles, intercediendo entre el pueblo y la gente del Club Social de Cali, sentándose en los eventos al lado derecho de los alcaldes de turno, incluso recibiendo a presidentes como Rojas Pinilla. Pese a vivir casi en la indigencia, siempre vestía ropa fina y mantenía un porte muy elegante. Hacia 1970, Jovita era reconocida en todos sectores de la ciudad.


Falleció a causa de un paro cardíaco en el baño de su habitación, en el barrio el Hoyo al norte de Cali. Su sepelio ha sido recordado como el más concurrido en la historia de la ciudad.

Monumento Jovita Reina infinita

El 31 de diciembre de 2007, fue inaugurado el monumento “Jovita Reina Infinita” del artista Diego Pombo. Situada en el parque de los estudiantes, al frente del histórico Colegio de Santa Librada. 

Características: 4,1 m de altura; resina y fibra de vidrio, es pintada en acrílico.

Fuente:


Hola,
Si tienen en un archivo .gradle una línea de compilación similar a esta:

compile(group: 'oracle-struct-mapping-lib', name: 'oracle-struct-mapping-lib', version: '1.0-20201103.170057-1')

Y al compilar el archivo gradle o al ejecutar el comando gradle build el sistema les muestra el error:

Could not find oracle-struct-mapping-lib:oracle-struct-mapping-lib:1.0-20201103.170057-1.
Required by:
project :

Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html



Respuesta:
Se debe a que el sistema al compilarse no encuentra una librería que se tiene declarada en el archivo .gradle en este caso la de nombre: 'oracle-struct-mapping-lib'.
Por lo cual para solucionar este error, se debe eliminar la linea del archivo .gradle que se esta compilando,
puesto que el sistema no lo encuentra en ningún repositorio.
Como cada compañía maneja códigos diferentes para averiguar el número de teléfono, se deben seguir los siguientes pasos si se desea obtener el número de la sim card que tiene actualmente nuestro celular.


1. Identificar el operador telefónico del cual se desea conocer el número, esto debido a que cada operador maneja un código diferente, a continuación se muestra el código a marcar dependiendo del operador telefónico (solo en Colombia).
  • Claro: *611#
  • Tigo: *255*4#
  • Movistar: *#61#
  • Avantel: 85532 (solo mensaje de texto)
  • Móvil Éxito: *255*4#
  • Virgin Colombia: *111*3*3#
  • ETB: *#62#
  • Flash Mobile Colombia: *555#
2. Se debe marcar el código (dependiendo del operador) en el celular y simplemente se oprime el botón de llamada (como si se fuese a llamar a cualquier número, pero en este caso se marca el código correspondiente del operador).
En el caso de Avantel tendrás que enviar un mensaje de texto al 85532 con la palabra numero, sin la tilde.

3. Finalmente, se espera un momento y en el celular se recibe un pequeño mensaje con el número de teléfono. Ejemplo: MSISDN: 3151234567.

Listo eso es todo, mucha suerte y ojalá les sirva esta información.

Fuente:
Hola,

Por si no lo saben, cuando se utiliza Spring Boot este por defecto escribe los logs que se generen mediante la librería: java.util.logging, por la consola del IDE, pero si se desea estos logs se pueden escribir en un fichero.


Al igual que la activación del nivel a DEBUG la configuración para activar el fichero de log sigue el mismo principio de configuración de Spring Boot.

Se debe tener en cuenta que estos ficheros que se crean rotan por defecto cada 10Mb.

Las propiedades para indicar el fichero donde escribir los logs son:
  • logging.file
  • logging.path
Nota:
Esto también aplica para SLF4J (Simple Logging Facade for Java proporciona una API de registro Java a través de un simple patrón de fachada. El servidor de registro subyacente se determina en tiempo de implementación y puede ser java.util.logging, log4j, logback o tinylog.​) mediante el import lombok.extern.slf4j.Slf4j;

El ejemplo funcional que se usará a continuación es con logging.file, en el yaml, se debe escribir el siguiente código:

logging:
file.name: /Users/myNameIs/Documents/pruebaLog.log
pattern:
console: "%d [%t] %-5level %logger{36} - %msg%n"
file: "%d [%t] %-5level %logger{36} - %msg%n"
level:
com.m2evorah: INFO
org.springframework: INFO
org.hibernate: ERROR

Ese bloque de código permite registrar en el archivo los logs de tipo INFO y ERROR. Tengan muy en cuenta la indentación (mover un bloque de texto hacia la derecha insertando espacios o tabuladores, para así separarlo del margen izquierdo y distinguirlo mejor del texto adyacente) en el archivo yaml, porque sino les puede fallar.

La salida del archivo pruebaLog.log es:

[com.prueba.comun.programacion.miaplicacion.utilidades.Utilidades]

2021-02-18 13:06:41,928 [http-nio-0.0.0.0-80-exec-4] INFO c.b.c.s.m.c.PrincipalMain - MS Spring Boot, iniciando la ejecucion de la prueba...

Nota:
Si quieren imprimir otro tipo de nivel en el archivo log, solo deben jugar con los parámetros dentro del level.

Listo, cada vez que el Application del Spring Boot se ejecuta (se despliega la aplicación), se crea el archivo externo donde se almacenan los logs en la ruta definida en el yaml, eso es todo, mucha suerte.

Fuentes:

Hola,

Si requieren saber cuantos años tiene una persona a partir de la fecha de nacimiento en Java, teniendo en cuenta los meses y los años, pueden checkear el siguiente código:




import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;
import java.util.*;

/**
* Metodo encargado de a partir de una fecha de nacimiento, obtener los años, meses y días que tiene una persona de nacida.
*
* @param pStrFechaNacimiento Define la fecha de nacimiento
* @param pStrFormatoFechaNac Define el formato de la fecha de nacimiento
* @return un entero con la edad de la persona
*/
public static int obtenerEdadExactaDesdeFechaNacimiento(String pStrFechaNacimiento, String pStrFormatoFechaNac) {

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(pStrFormatoFechaNac);
LocalDate fechaNacimiento = LocalDate.parse(pStrFechaNacimiento, dateTimeFormatter);
LocalDate fechaActual = LocalDate.now();

Period periodo = Period.between(fechaNacimiento, fechaActual);

System.out.printf("La edad de la persona es: %s años, %s meses y %s días",
periodo.getYears(), periodo.getMonths(), periodo.getDays());

return periodo.getYears();

}

En donde el parámetro pStrFechaNacimiento hace referencia a la fecha de nacimiento desde la cual se va a obtener la edad, y el parámetro pStrFormatoFechaNac hace referencia al formato de la fecha de nacimiento, por ejemplo: 

pStrFechaNacimiento = "20/06/1993" y pStrFormatoFechaNac = "dd/MM/yyyy"

También funciona pasandolé los parámetros así:

pStrFechaNacimiento = "1993/06/20" y pStrFormatoFechaNac = "yyyy/MM/dd"

Si se desea, se puede adicionar este metodo dentro de un try catch, para controlar las excepciones que puedan ocurrir de tipo ParseException: Unparseable date.
Hola,

Si de pronto han tenido esta duda, aquí les dejo la respuesta más simple y detallada.


Los microservicios son tanto un estilo de arquitectura como un modo de programar software. 

Con los microservicios, las aplicaciones se dividen en sus elementos más pequeños e independientes entre sí. A diferencia del enfoque tradicional y monolítico de las aplicaciones, en el que todo se compila en una sola pieza, los microservicios son elementos independientes que funcionan en conjunto para llevar a cabo las mismas tareas. Cada uno de esos elementos o procesos es un microservicio. 

Este enfoque de desarrollo de software valora el nivel de detalle, la sencillez y la capacidad para compartir un proceso similar en varias aplicaciones. Es un elemento fundamental de la optimización del desarrollo de aplicaciones hacia un modelo nativo de la nube.

Tomado en: