miércoles, 27 de enero de 2016

Java EE 8 - MVC 1.0

MVC es una nueva característica que vendrá en Java EE 8. No reemplaza al JSF, ya que es otra filosofía. JSF está basado en estados de la aplicación, mientras que MVC es justamente la implementación del patrón Modelo Vista Controlador. Uno mismo va a crear el Modelo, también la vista (generalmente JSP) y el controlador.

Cuando comencemos a verlo, notaremos que tiene un parecido a Spring MVC (para ver una pequeña introducción de Spring MVC, puedes ver el post anterior: Conociendo Spring MVC. La diferencia es que este está más Java EE, con más anotaciones que archivos de configuración, y más Oracle.


miércoles, 6 de enero de 2016

I/O y NIO - Navegación de archivos y I/O (1/7)

I/O sabemos que se trata de Input / Output, y consiste - generalmente - en el manejo de archivos, aunque también puede manejar la entrada y salida de bytes desde cualquier entrada/salida como fuera un puerto serial, cadena de caracteres, impresora, etc.

NIO es el "Nuevo I/O" que contiene paquetes nuevos desde Java 1.4. Actualmente hay un NIO.2, o sea, paquetes más nuevos aún, que aparece en Java 7. Para generalizar, cuando se mencione NIO, se estará tratando de NIO2.

En este post veremos algunos ejemplos sobre estos paquetes que son muy útiles, y también necesarios para el examen de certificación.

jueves, 17 de diciembre de 2015

Midiendo el rendimiento con JMH - Java Microbenchmark Harness

JMH es una herramienta tipo arnés de Java que permite medir el rendimiento en la construcción, ejecución, y análisis de aplicaciones hechas Java y otros lenguajes hechos para JVM

El proyecto se encuentra aquí: http://openjdk.java.net/projects/code-tools/jmh/

En este post veremos un poco de su funcionamiento

lunes, 7 de diciembre de 2015

UML en NetBeans

NetBeans permite programación orientada a objetos como Java y C++. Ahora bien, siendo un IDE muy bueno, debería permitirnos manejar UML para modelar nuestros objetos ¿cierto?

Pues bien, aquí les muestro como instalar un plugin en NetBeans que nos permita escribir UML de una manera no convencional. (Mejor que arrastrar y soltar los artefactos en el lienzo.. ya verán)

Conociendo RegEx (Parte 2/2)

Conociendo RegEx (Parte 2/2)
Continuamos con las Expresiones Regulares, esta vez veremos ejemplos un poco más complejo.

El anterior post lo puedes ver aquí Conociendo RegEx (Parte 1/2)


jueves, 15 de octubre de 2015

Convertidor de tipo de atributo con JavaPersistence API

Java nos permite crear muchos tipos de datos. Pero cuando queremos guardarlo en la base de datos, necesitamos hacer una conversión. Y de manera inversa, cuando queremos obtener un valor de la base de datos, necesitamos convertirlo a nuestro tipo de valor especial.

Menudo trabajo. Optamos o por hacer un convertidor de datos a nivel de DAO, o no usamos nuestra estructura de datos especial.

¿Y si usamos JPA? Calma, calma. La versión JPA 2.1 (que viene incluido en Java EE 7 - JSR 338) tiene un convertir de tipos para ayudarnos con este problema.


miércoles, 30 de septiembre de 2015

Encuesta para conocernos mejor

Estimad[a|o]s seguidor[a|e]s.

Como Java es bastante extenso, me gustaría conocer qué tanto tienen en experiencia en Java para poder preparar más contenido de acuerdo a su perfil. Así que agradeceré que respondan esta pequeña encuesta.

http://goo.gl/forms/nSosfMUEOy


lunes, 14 de septiembre de 2015

Convirtiendo Aplicaciones Java EE monolíticos a Microservicios

Convirtiendo Aplicaciones Java EE monolíticos a Microservicios
(Traducción libre de Monolithic to Microservices Refactoring for Java EE Applications de  +Arun Gupta )

¿Te has preguntado qué se necesita para convertir una aplicación Java EE monolítica a uno basado en microservicios?

Este post explica cómo hacerlo usando un ejemplo trivial de carrito de compras, y cuáles son algunas de las preocupaciones el hacer utilizar microservicios.

sábado, 22 de agosto de 2015

NetBeans Portable + Java Portable [+ GlassFish Portable + Tomcat Portable...]

Lo más requerido de una aplicación es que sea portable, y - según viendo algunas estadísticas - existen programadores que quieren tener el NetBeans también portable.

Qué significa que una aplicación sea portable? Bueno, que se pueda ejecutar sin que se instale en el sistema operativo.

Así que en este post explicaré un truco para que tengas tu NetBeans IDE de manera portable.


jueves, 13 de agosto de 2015

Ejemplo básico de API JSON e Java EE7

Ejemplo básico de API JSON e Java EE7
Aquí les muestro un vídeo, con código explicado del API de JSON que viene en Java EE 7.

lunes, 20 de julio de 2015

Un vistazo a jshell: Read Eval Print Loop (REPL)

Un vistazo a jshell: Read Eval Print Loop (REPL)
Una de las novísimas características que tendrá Java 9, es la de permitir evaluar expresiones Java pero como rutinas.

Me explico: Con JavaEE 7 se pueden crear cadenas y permitirlas evaluar y obtener resultados, pero con jshell, se podrán crear rutinas, con for, if, try/catch, import, etc y poderlas ejecutar como si fuera un Java dentro de otro java.

Existe una implementación de Java REPL (Read-Eval-Print Loop) llamada Proyecto Kulla.

Podemos ver una implementación en línea de este característica aquí mismo:

sábado, 11 de julio de 2015

NetBeans con Node.js

NetBeans con Node.js
La nueva versión de NetBeans 8.1 permitirá desarrollar HTML5 con Node.

lunes, 22 de junio de 2015

Java Web MVC - Sesión 01.01: Cargando un archivo

Si vieron el vídeo y post anterior, habrán visto que propongo cargar la foto del usuario que se está registrando.. pero no aparece en el tutorial. Y si no lo han visto, ahora ya lo saben.

Pues bien, este post es un anexo a la sesión anterior sobre Java Web MVC.


jueves, 18 de junio de 2015

Snippet: Conversión de String a LocalDate y a Date, y viceversa

Aquí dejo un snippet que me sirve y también les podrá ser de ayuda para manipular Cadenas con Fechas.
Snippet: Conversión de String a LocalDate y a Date, y visceversa


Resulta que, por cosas de la vida, es necesario agregar días o meses a una fecha que fue ingresada en una cadena, y que debe ser guardada como tipo java.util.Date ¡A que no te pasa lo mismo!

Pues bien, la manipulación de días, meses, semanas, etc es más efectivo y cómodo con el nuevo tipo de Java 8 llamado java.time.LocalDate como lo mencioné en un post anterior: Paquete java.time de Java 8: Fechas y Horas.

En este snippet (fragmento de código) hice un pequeño ejemplo de cómo convertir desde una cadena, a un tipo java.time.LocalDate. Una vez en este tipo, se puede manipular las fechas como mayor se plazca, y luego se puede convertir a java.util.Date.

La segunda parte del código es al revés: se tiene un objeto java.util.Date, y queremos convertirlo a java.time.LocalDate para poderlo manipular, y luego lo convertimos a cadena para mostrárselo al usuario.


Si te gustó, dale un +1.
Si te es útil, compártelo... es gratis

lunes, 15 de junio de 2015

Java Web MVC - Sesión 01

Java Web MVC - Sesión 01
Con este tutorial comienzo una nueva serie en este humilde blog.

Aprenderemos a conocer todas las funcionalidades de Java EE en una aplicación.

En este primer post haremos una aplicación MVC básico, usando las siguientes tecnologías de Java EE7:
  • JSP (para la capa de presentación)
  • Servlet (para la controladora)
  • EJB (Para el manejo del modelo)
  • JPA (La persistencia de datos)
La base de datos es indiferente, podemos usar PostgreSQL, MySQL, Oracle, etc. Pero para este ejemplo estoy usando Apache Derby.