blog de Sr. Negativo

Spring MVC ... primer ejemplo (Rest)

Para este ejemplo crearemos una base de datos (yo uso postgresql) llamada proyecto, agregaremos una tabla usuario con los siguientes campos: id, nombre, password, logeado y area.

CREATE TABLE public.usuario
(
    id INTEGER NOT NULL,
    nombre CHARACTER VARYING NOT NULL,
    password CHARACTER VARYING  NOT NULL,
    logeado BOOLEAN,
    area CHARACTER VARYING,
    CONSTRAINT usuario_pkey PRIMARY KEY (id)
);

Ahora agregaremos unos datos:

INSERT INTO public.usuario(
        id, nombre, password, logeado, area)
        VALUES (1, 'Antony Yung', '00T$@l12', TRUE, 'sistemas'),(2, 'Adrian Uribe', '3EvBb00', FALSE, 'administracion'),
    (3,'Ernestina Pedroza','@22GgHQll',TRUE,'recursos humanos');

Una vez creado la base de datos y su correspondiente tabla nos enfocaremos a crear el ejemplo con Spring MVC.

¿Qués es lo que ncesitaremos?

  1. Archivo: build.gradle , para configurar las dependencias necesarias

Spring Framework ... Spring MVC

¿Qué es Spring Framework?

Es un marco de trabajo que se apoya en algunos estándares Java EE para el desarrollo de aplicaciones y contenedor de inversión de control. Nos permite, entre otras cosas, crear aplicaciones web, servicios REST, persistencia de bases de datos relacionales y no relacionales, etc. En este post hablaremos de Spring MVC, el cual es un marco de trabajo que nos permite crear aplicaciones web con la arquitectura MVC.

Arquitectura Modelo-Vista-Controlador (Model-View-Control)

Esta arquitectura se compone de tres principales conceptos:

  • A. Modelo: Objetos Java.
  • B. Vista: Plantilla que genera la HTML.
  • C. Controlador: Controlador que atiende las peticiones HTTP que llegan al servidor desde el navegador; si resuelve la petición, devuelve una respuesta, en este caso la página HTML.

Supongamos que un cliente quiere saber el estado actual de sus movimientos bancarios.

  1. El cliente hace una solicitud al servidor.

Construyendo proyectos con Gradle (instalación con SDKMAN!)


En el post pasado hablé sobre SDKMAN! , una herramienta que nos permite instalar lenguajes de programación como Ceylon, Java, Groovy, etc. Tambien nos permite instalar herramientas como Gradle, la cual nos permite construir y administrar proyectos.

Antes de empezar deberías dar un vistazo al anterior post .

Tan sencillo como teclear desde la terminal (cmd o linux shell) lo siguiente:
$sdk install gradle

Comprobar la versión instalada:
$gradle --version
$gradle -v

Debería salir algo como esto:

------------------------------------------------------------
Gradle 3.5
------------------------------------------------------------

Build time: 2017-04-10 13:37:25 UTC

JDBI como alternativa a JDBC, JPA, Hibernate ...

Para todos aquellos que estén cansados de usar siempre lo mismo (JDBC, JPA, Hibernate, etc.) cuando trabajan con base de datos en sus aplicaciones pueden optar por usar JDBI, una librería que promete facilitarnos la existencia. Su página oficial dice:

JDBI is a SQL convenience library for Java. It attempts to expose relational database access in idiommatic Java, using collections, beans, and so on, while maintaining the same level of detail as JDBC. It exposes two different style APIs, a fluent style and a sql object style

No me dejaran mentir al decir que cuando se trabaja con aplicaciones demasiado robustas los desarrolladores sufrimos al trabajar con extensos archivos confusos y difíciles de mantener. Peor aún cuando el equipo original de trabajo "olvido" documentar el proyecto.

Instalando lenguajes JVM usando SDKMAN!

Existe una herramienta llamada SDKMAN! que nos sirve para instalar lenguajes como Ceylon, Groovy, Scala, además de otros entornos o sdks de desarrollo como Grails, SBT, etc.

Desde Linux podemos teclear en nuestra consola de comandos:

curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

Obtener ayuda:  sdk help
Que versión tenemos: sdk version
Listar lo que podemos instalar: sdk list

Comencemos instalando Ceylon, Groovy, y Scala:

sdk install ceylon
sdk install groovy
sdk install scala

Comprobemos que se instalaron adecuadamente:

ceylon --version
groovy -version
scala -version

Con esto tenemos instalados los lenguajes y la herramienta SDKMAN!.

Links
http://sdkman.io/

Aprender computación (y programación) sin computadoras


CS Unplugged es una iniciativa y una serie de actividades que tienen el objeto de enseñar computación sin necesidad de usar una computadora. En el sitio se ofrecen varios vídeos en los que se muestran diversas actividades que muestran "como funcionan las computadoras", el lenguaje que emplean para hacer "la magia" que vemos en las pantallas.

"CS Unplugged is a collection of free learning activities that teach Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around."

Habrá que echarle un vistazo.

Ceylon 1.2.2 ya está disponible

Ceylon 1.2.2 (Charming But Irrational)
http://ceylon-lang.org/blog/2016/03/11/ceylon-1-2-2/

A darle un vistazo.

Cuando no se sabe Java y dan cursos de Java

Encontré este vídeo de los cursos Java de Freddy Vega. Tan solo véanlo y analicenlo.

Aquí vídeo

¡Feliz año 2016!

Herencia e interfaces en Ceylon


Hace tiempo que no escribo nada y que mejor volviéndolo hacer sobre Ceylon.

Interfaces

Las interfaces son una colección de métodos y propiedades que permiten a una clase definir su implementación. Si en esa colección defino un método llamado  comer() la clase se encargará de implementarlo cuando corresponda a la lógica del problema. Por ejemplo, una clase llamada Animal y/o Persona pueden emplear ese método, sin embargo, una clase llamada Maquina y/o Turbina podría usarse un método más adecuado como encender(); o  apagar(); .

Distribuir contenido