viernes, 27 de noviembre de 2015

Configuración Básica de Spring MVC mediante Java.

En este primer ejemplo de configuración de Spring MVC se realizará completamente con código Java, sin nada de XML. Consiste en un sencillo Hola Mundo con Spring. Para ello utilizaré como herramientas:


Maven
Netbeans 8.0.2
Tomcat 8.0.28
Spring 4.2.2

Podéis descargar el código fuente del proyecto en mi respositorio de GitHub: https://github.com/Jaime-Alonso/TutorialSpringMVC

Cuando un usuario hace una solicitud a nuestra aplicación web, como mínimo incluye la URL, pero también puede contener información adicional como por ejemplo la enviada a través de un formulario.

La primera parada de la solicitud es del Dispatcher Servlet de Spring, que cómo otros frameworks, procesa todas las solicitudes mediante un servlet frontal que delega la responsabilidad en otros componentes de la aplicación, normalmente llamados controladores. El Dispatcher Servlet tiene que decidir que controlador elegir en cada caso.

Es habitual en la lógica del controlador que se procese una respuesta con información hacia el usuario, y con un formato normalmente HTML. La tarea del controlador es empaquetar los datos del modelo, asignar una vista correspondiente (normalmente un JSP) y devolverlo al Dispatcher Servlet.

jueves, 26 de noviembre de 2015

Introducción a SQLite en Android

Una pequeña introducción teórica antes de poner las manos en el código.

SQLite es un sistema de gestión de bases de datos que ha triunfado, sobre todo en entornos embebidos y esta presente no sólo en Android, sino también en iOS y en Blackberry y en un montón de sistemas con "relativamente" poca potencia.

Las características que hacen SQLite como la base de datos más popular en dispositivos móviles, entre otras son:
  • Consume muy poca memoria.
  • Fácil de usar.
  • Es de Libre Disponibilidad

miércoles, 18 de noviembre de 2015

Layouts en Java FX

Uno de los desafíos en la construcción de interfaces gráficas es mantener el orden, la posición y el tamaño de los elementos de nuestra aplicación, a la vez que se puede cambiar el tamaño de ventana y mantener una experiencia agradable al usuario. La API de Java FX nos provee de una serie de Layouts para los casos más comunes.

Todos trabajan como contenedores de otros layout o de controles. 

martes, 17 de noviembre de 2015

RecyclerView - Ejemplo.

RecyclerView es un Widget o componente introducido en la librería de soporte v7, junto con otro componente llamado CardView. Aunque es considerado como un ListView avanzado, realmente es un componente muy flexible que permite mostrar colecciones de datos.

De forma predefinida tenemos 3 opciones:


  • LinearLayoutManager
  • GridLayoutManager
  • StaggeredGridLayoutManager
Obviamente se podría implementar un Layout Manager personalizado.

Para implementar un RecyclerView son imprescindibles las siguientes Clases:

lunes, 16 de noviembre de 2015

Introducción a JavaFX - Herramientas Necesarias


¿Que es JavaFX?
Podríamos decir que es una biblioteca de clases para la creación de Interfaces Gráficas de Usuario, y permite el desarrollo de aplicaciones de escritorio mediante Java o aplicaciones embebidas en el navegador web.
Pero no se queda en un simple conjunto de controles, algunas de sus características destacables son:

  • Es posible dar un estilo moderno a nuestra aplicación mediante CSS. 
  • Aprovecha la GPU o hardware gráfico para mejorar el rendimiento.
  • Utiliza el patrón MVC, separando el diseño de la lógica de la aplicación.
  • Soporta Multitouch.
  • Es posible reproducir contenido web multimedia.
  • Incluye una API Canvas.
  • Es posible embeber páginas web mediante un WebView que utiliza la tecnología Webkit. Mediante JavaScript se puede llamar a la API de Java y viceversa.
En cuanto a los modos de ejecutar una aplicación utilizando JavaFx tenemos 4 vías diferentes:
  1. Como un programa independiente, es decir, el típico archivo jar.
  2. Lanzar la aplicación utilizando un servidor remoto mediante Web Start, es decir, mediante un enlace en una web o un acceso directo en el escritorio cargaría la aplicación de forma remota.
  3. Se puede embeber la aplicación en el navegador web.
  4. Como aplicación independiente autónoma, incluyendo su propia copia del JRE por lo que el usuario no necesita tener instalado Java.


Una pregunta que se suele plantear a menudo es ¿JavaFX está diseñado para sustituir a Swing? La respuesta es Sí, pero hay que matizar que hay una enorme cantidad de código escrito en Swing en especial aplicaciones empresariales, por lo que aún le queda recorrido, sin embargo, Java FX se ha posicionado claramente para sustituir a Swing.

Ejemplos con JAVAFX
Si quieres ver algunos ejemplos de lo que se puede hacer con JavaFx los tienes disponibles en la web de Oracle
Para descargar: 
Para ver en el navegador mediante plugin: 

Las herramientas necesarias que debes instalar son:

JDK 8 y JavaFx Scene Builder (en el apartado de Adicional Resources) Las dos descargas en el siguiente enlace: http://www.oracle.com/technetwork/java/javase/downloads/index.html

Un IDE, preferiblemente Netbeans 8 o superior en https://netbeans.org/downloads/ que, aunque se pueden utilizar otros, Netbeans es el mejor soportado hasta la fecha.

En próximas entradas del blog sobre JavaFx veremos ejemplos y código en detalle para crear una aplicación de escritorio.



domingo, 15 de noviembre de 2015

El patrón de diseño Singleton en Java

El patrón de diseño Singleton restringe la creación de instancias a una clase y se asegura de que sólo existe una instancia de la clase en la máquina virtual de Java, es decir, sólo podemos tener un objeto de la clase por aplicación.



En este artículo analizaré ciertas formas de llevarlo a cabo y los problemas que derivan de cada implementación.






sábado, 14 de noviembre de 2015

Mi primera App "Hola Mundo" con Android Studio

En este tutorial de programación Android vamos a ver como crear nuestro primer proyecto, ver la estructura de directorios que se genera por defecto y lanzar nuestra aplicación en el emulador.





Vamos a comenzar pulsando Start a new Android Studio project






El nombre de la aplicación la llamaré "Hola Mundo"
Company Domain es importante por que genera el nombre del paquete (Package name), el nombre del paquete debe ser único, no pueden haber dos aplicaciones con el mismo nombre de paquete en un dispositivo. Si observas se puede editar el que genera automáticamente.
Y por último donde vamos a guardar nuestro proyecto en Project location.

viernes, 13 de noviembre de 2015

Recursos de aprendizaje sobre Programación Android


Estos son algunos de los enlaces que tengo como favoritos en mis marcadores, relacionados principalmente con el mundo de programación Android. Seguramente existan muchos más, los iré actualizando.
Se Agradecen sugerencias!





Guía de Material Design:




Librerías:

Herramientas Extra:

BLOGS EN INGLÉS:
BLOGS EN ESPAÑOL:
RECURSOS OFICIALES:

Canal Oficial de Android Developers en YOUTUBE.

Blog Oficial de Android Developeres:

Web Oficial de Android Developers: