javaherenciacuriosidades

Java Herencia y sus limitaciones

Hablar de Java Herencia y sus limitaciones es muy común cuando nos disponemos a preparar una certificación de Java como la de programador. La mayor parte de los desarrolladores piensa que cuando heredamos o extendemos de una clase se hereda todo.   Sin embargo esto no es así , existen una serie de limitaciones. Vamos a […]

spring@importbeanok

Spring @import , organizando Spring framework

Spring @import nos permite organizar de una mejor manera la configuración de Spring Framework . Normalmente en una configuración de Spring basada en anotaciones tenemos algo similar a lo siguiente: En este caso el fichero es muy pequeño pero es bastante habitual que tenga cientos de lineas de código registrando cada uno de los beans […]

javaStreamStringMini

Java Stream String y Java 8

El uso de Java Stream String es muy común cuando utilizamos Java 8. La realidad es que en muchos casos necesitamos transformar una cadena de texto en otra cosa y que mejor que usar los Streams y la programación funcional para hacerlo. Así que todos nosotros rápidamente vamos a revisar el API de Java y […]

ReactStateCalculo

React State un concepto clave de React

El concepto de React State es uno de los conceptos más importantes de React. Todo componente de React tiene asignadas unas propiedades  y un estado . Cada vez que el estado de un componente cambia el componente se  vuelve a renderizar. Vamos a construir un ejemplo de manejo de estado. El primer paso es crear […]

cursosdejavaoo

Mis Cursos de Java para desarrolladores

Hoy publico mis cursos de Java para desarrolladores. Estos se componen de un curso Java de programación orientada a objeto, un curso de manejo de apis y un curso de aplicaciones web. Hace ya tiempo que varias personas me comentaron que debería grabar algunos cursos que cubrieran las tecnologías fundamentales de la plataforma.   Java […]

EJBEventListeners

El concepto de EJB Event y como desacoplar servicios

El concepto de EJB Event pertenece a Java EE 6 . A partir de esta versión de la plataforma tenemos la posibilidad de generar eventos a nivel de EJBs. Esto es algo que en un principio parece extraño ya que estamos más acostumbrados a la gestión de eventos en el mundo de JavaScript y la […]

javaobjectsizediagram

Java Object Size y JVM OverHead

Hacerse la pregunta sobre Java Object Size o cuanto ocupa un objeto en Java en memoria es bastante común. En muchas ocasiones nos encontramos desarrollando aplicaciones que instancia muchos objetos. En este tipo de situaciones no es infrecuente tener problemas de gestión de memoria.La primera pregunta que nos viene a la cabeza es ¿Cuanto ocupan […]

jpalazyfechingProxiesSQL

JPA Lazy fetching proxies y rendimiento

El concepto de JPA Lazy Fetching siempre cuesta un poco entenderlo y es uno de los conceptos fundamentales de Java Persistence API .¿Cómo funciona exactamente? Vamos a explicarlo a detalle.  Lo primero que tenemos que entender es que cuando trabajamos con JPA , definimos un modelo de dominio que relaciona las diferentes clases entre ellas. […]

jpaDTOGrafo

JPA DTO (Data Transfer Object) y JPQL

El uso de JPA DTO es algo bastante común cuando trabajamos con JPA. Recordemos que habitualmente cuando realizamos una consulta con Java Persistence API el resultado es un grafo de objetos. En muchos casos esto nos es suficiente , pero hay algunas ocaciones en las que nos puede ser mucho más útil devolver un DTO […]

javastreampeekfuncionamiento

Java Stream peek funcionamiento y logging

A veces usar Java Stream peek , es clave para entender cual es el funcionamiento de un flujo de Stream a nivel de Java 8 . Recordemos que los Streams nos permiten realizar operaciones complejas sobre un conjunto de datos . En ocasiones si el flujo de operaciones es elaborado cuesta entender realmente lo  que […]

javahashcodelista

Java override HashCode y curiosidades

El concepto de  Java override hashcode  es una de las preguntas clásicas de los exámenes de certificación de Java Programmer. ¿Cómo funcionan los hashcodes y para que sirven?. Los Java HashCode se encargan de generar un hash para cada uno de nuestros objetos. Vamos a ver un ejemplo sencillo: En este caso hemos generado los […]

jpaCriteriaParametros

JPA Criteria API , un enfoque diferente

El uso de JPA Criteria nos aporta muchas ventajas en cuanto a la construcción de SQL Dinámico utilizando JPA . Ahora bien su su sintaxis y su forma de trabajar son bastante diferentes a la forma clásica. Vamos a apoyarnos en el ejemplo anterior de JPA SQL Injection para construir el mismo ejemplo utilizando JPA Criteria […]