Entradas

Mostrando entradas de 2017

QLineEdit y QTextEdit tutorial Qt

Imagen
Ambos widgets QLineEdit y QTextEdit son utilizados para obtener un texto por parte del usuario, el primero solo permite una sola línea de texto, el segundo por el contrario maneja múltiples líneas de texto, ambos soportan la s características de copiar y pegar, arrastrar y soltar, y revertir cambios, entre otras cosas.

Spring Twitter API

Imagen
El uso de las redes sociales en nuestras aplicaciones web, hoy en día es algo imprescindible, por ello hemos decidido dedicar un tutorial a mostrar el modulo Spring Social, desarrollado con el fin de facilitar el proceso de integración de las distintas redes sociales a nuestras aplicaciones web, en este primer tutorial estudiaremos la API de Twitter, crearemos una aplicación capaz de integrarse con esta tecnología, podremos visualizar las publicaciones, consultar seguidores, publicar Tweets, etc., y mucho más.Para hacer el desarrollo más sencillo utilizaremos el Framework Spring Boot, más Maven como herramienta de construcción y administración de dependencias.

Hola mundo en Java

Imagen
Tutorial de introducción al lenguaje de programación Java, como primer paso crearemos el clásico programa hola mundo en Java, el cuál inicia una aplicación en consola y muestra el correspondiente mensaje, para este tutorial usaremos el IDE NetBeans 8.x, aunque puedes seguirlo con cualquier otro, el proceso de creación del proyecto y compilación del código es similar.

QPushButton & QLabel widgets Qt

Imagen
El widget representado por la clase QPushButton del Framework Qt está diseñado para responder a la interacción del usuario hecha mediante los clic del ratón, es una área rectangular que puede contener un texto, un icono o ambos, un QPushButton emite el signal clicked() cuando se presiona el mismo, aunque también puede emitir otros como: pressed() and released(), aunque usualmente utilizamos el primero.

Acceso a la webcam con OpenCV

Imagen
Usando la biblioteca OpenCV podemos acceder a la cámara web o cualquier otro dispositivo de captura que tengamos instalado en nuestro sistema, cada una de las imágenes capturadas podrán almacenarse para su análisis o procesamiento en tiempo real si así lo deseamos, tenemos disponible una clase que nos servirá para guardar los videos previamente capturados y procesados, el formato de almacenamiento depende de las características habilitadas, pero puede ser MP4, AVI, WMV, etc., y otros si tenemos los códec.Webcam desde OpenCVPara acceder a la webcam lo hacemos de manera parecida a como mostramos un video solo que en lugar de especificar un archivo de video a la clase VideoCapture indicaremos el número de dispositivo o índice de cámara que deseamos usar, cero si tenemos solo una cámara. Código C++#include<opencv2\opencv.hpp>usingnamespace cv; intmain() { VideoCapture cap(0); if(!cap.isOpened()) return-1; namedWindow("webcam"); for(;;) { …

JDBC Metadatos

Imagen
Los metadatos son información sobre los datos, esta vez no vamos a consultar los datos de una BD, lo que deseamos obtener es información de como se estructura la base de datos en si, es decir, las tablas que posee, las columnas que conforman cada una de las tablas, los procedimientos almacenados, etc., o incluso si lo deseamos podemos obtener información sobre el servidor de datos.

Histogramas OpenCV Python

Imagen
Un histograma es una gráfica en donde se muestra la frecuencia con las que aparecen los distintos niveles de intensidad de una imagen a escala de grises, normalmente el nivel de intensidad está en el rango de 0 a 255, en donde el valor 0 representa los color negro y 255 el color blanco, utilizando el histograma de una imagen podemos modificar sus características, por ejemplo, el brillo y contraste, existen además otras aplicaciones que veremos más adelante.

Conectar a base de datos MySQL con Java

Imagen
En todo proceso de desarrollo de una aplicación se requiere usualmente conectar a base de datos MySQL, es el servidor de datos que utilizaremos en este caso será MySQL aunque el mismo puede variar, pero el proceso es bastante similar, solo deberemos cambiar los datos de conexión, en este tutorial nos conectaremos a la base de datos usando la API JDBC del lenguaje de programación Java, como IDE haremos uso de NetBeans 8.x.

Instalar MySQL en Windows

Imagen
El presente tutorial muestra paso a paso el proceso de instalación del servidor MySQL en el sistema Windows, primero debemos descargar el respectivo instalador, lo puede obtener en este enlace: instalador MySQL, una vez tengas el archivo ejecútalo y sigue estos pasos para instalarlo en tu sistema:

Pagination control JavaFX

Imagen
El control Pagination de JavaFX puede ser utilizado para mostrar un conjunto de elementos uno a uno, por ejemplo, para nuestra demostración usaremos dicho control para mostrar una serie de imágenes seleccionadas por el usuario de su sistema de archivos, la imágenes seleccionadas se presentarán una a una y el usuario podrá navegar entre los distintos elementos.

Integrar MyBatis a Spring Framework

Anteriormente mostramos el uso del Framework MyBatis para agilizar el desarrollo de aplicaciones con acceso a datos, ahora nos centraremos en la integración de MyBatis a Spring, aprenderemos los pasos necesarios para integrar esta tecnología al contenedor IoC de Spring, la integración admite manejo de transacciones, transformación de excepciones, y todo lo requerido para el funcionamiento de ambas bibliotecas.

ColorPicker control JavaFX

Imagen
El control ColorPicker es utilizado para seleccionar un color, este puede ser establecido usando el ratón, haciendo clic sobre el color deseado, o indicando el color en uno de los formatos admitidos, HSB, RGB, Web, este control es una extensión del ComboBox podemos crear una instancia usando su constructor vacío o la sobre carga que permite establecer el color inicial, veamos como se usa.

Signals & Slots en Qt

Imagen
En todos los framework diseñados para desarrollar GUIs debemos tener un mecanismo para responder a los eventos producidos por los componente de la interface de usuario y también para emitir dichos eventos, en Qt 5.x contamos con los Signals & Slots para tal propósito, por ejemplo, al presionar el botón Salir se genera un signal, si deseamos que dicho botón cierre la ventana entonces debemos establecer la función close() de la ventana como slot.

MyBatis consultar base de datos

Imagen
El framework MyBatis está diseñado para facilitar y agilizar el acceso a bases de datos SQL, soporta procedimientos almacenados y mapeos avanzados, MyBatis puede ser configurado usando un archivo XML y desde código Java mediante anotaciones, podemos usar la opción de nuestra preferencia o combinar ambas, el presente tutorial se centra en el uso de las anotaciones en próximas publicaciones trataremos la configuración mediante archivos XML.

Instalar servidor HSQLDB

Imagen
Dedicaremos este pequeño tutorial al servidor de datos HSQLDB, veremos el proceso para poder iniciarlo en modo servidor, además usaremos la pequeña aplicación con GUI que esta disponible para acceder al servidor y poder manipular los datos del mismo, adicionalmente agregamos los datos de prueba que se incluyen en esta aplicación.

Umbralización adaptativa con OpenCV Python

Imagen
En el tutorial previo hablamos sobre el proceso de umbralización, y cómo utilizar el mismo para separar los objetos del fondo de la imagen, en aquella ocasión usamos un valor de umbral fijo, pero que sucede si el color de fondo o la iluminación de la escena no es uniforme, resultaría difícil segmentar los objetos usando un umbral fijo, en ese caso debemos contemplar otras técnicas como umbralización adaptativa que procederemos a estudiar.

Qt Layouts para posicionar los QWidget

Imagen
Dedicaremos este tutorial ha estudiar el posicionamiento de los widgets en la ventana de nuestra aplicación, en Qt disponemos de diversos modos para realizar esto, entre ellos: posicionamiento absoluto, con él debemos indicar la posición y dimensiones de cada uno de los controles que ubicaremos en la GUI, otra alternativa es usar los layout manager, ellos se encargará de posicionar y redimensionar los controles de manera automática.

DatePicker Control JavaFX para manejar fechas

Imagen
El control DatePicker de JavaFX es un ComboxBox con la apariencia rediseñada, la fecha se puede cambiar escribiendo en el cuadro de texto directamente o seleccionando la fecha adecuada mediante el calendario que se muestra al desplegar el pop-up, en la primera fila ubicaremos el mes y año, en la segunda se establece el día.

Qt Tutorial de introducción

Imagen
Tutorial de introducción al uso del framework Qt 5.x enfocado en la creación de Interfaces Gráficas de Usuario (GUI) en este primer documento estudiaremos las ventanas y sus diversos componentes, aprenderemos a mostrarlas, configurarlas, añadir elementos en ella y demás, para este propósito utilizaremos la clase QWidget, la cuál es la base para todos los elementos de la UI en el framework.

Servlet en servidor embebido Jetty

Imagen
En el tutorial anterior vimos la manera de agregar un servlet a un servidor Apache Tomcat embebido, en esta ocasión haremos la misma tarea salvo que el servidor que utilizaremos esta vez será Jetty, el cual al igual que el servidor anterior también nos permite incluirlo en nuestros proyectos como un servidor embebido.

Servlet en servidor Tomcat embebido

Imagen
En temas anteriores hemos hablado de tecnologías como Spring Boot, Spark, y otras, que nos facilitan el desarrollo de micro servicios web, los interesante de las mismas, es que, estás utilizan un servidor embebido para contener sus aplicaciones, con esto evitamos la necesidad de crear un archivo WAR y desplegarlo en el servidor para poder ver nuestra aplicación en ejecución, dedicaremos este tutorial a aprender cómo incluir un este tipo de servidores en nuestro proyecto y desplegar un Servlet en él.

Spring Agregar un Servlet o Filtro Adicional

Imagen
Como sabemos el framework Spring MVC dispone de su propio Servlet, el llamado DispatcherServlet encargado de despachar las peticiones a los distintos controladores de nuestra aplicación web, pero que sucede si deseamos agregar nuestra propia implementación de un Servlet o tal ves un filtro, Spring nos permite agregar filtros o servlets adicionales de la menara que mostramos en seguida.

J2HTML Crea código HTML desde Java

Imagen
La librería J2HTML nos permite generar código HTML utilizando el lenguaje Java, se utiliza de una manera muy sencilla y similar a HTML, antes de empezar solo debemos agregar la dependencia y luego importar TagCreator, veamos una demostración.

Umbralización en OpenCV

Imagen
La umbralización es uno de los métodos más simples y eficientes de segmentación, segmentar quiere decir, separar o extraer las regiones de una imagen que nos interese estudiar o analizar, para lograr separar la región deseada se establece un valor que define el umbral, los pixeles cuya intensidad superen el umbral serán rechazado o aceptados, según sea el caso.

Sql2o Simplifica el acceso a datos JDBC

Sql2o es un pequeño framework Java que ayudará a simplificar el acceso a datos, esta librería utiliza internamente la API JDBC para lanzar las consultas contra la base de datos, la misma realizará el trabajo repetitivo, cómo: manejo de excepciones, mapeo de datos, etc., esto nos permite centrarnos en lo que realmente nos interesa y agiliza el proceso de desarrollo ya que debemos escribir menos código.

Instalar Qt Framework en Windows

Imagen
Qt es un framework diseñado para desarrollar aplicaciones C/C++ con interfaces de usuario enriquecidas destinadas para sistemas móviles, embebidos o aplicaciones de escritorio, este framework puede ser utilizado con diversos compiladores, entre ellos, Visual Studio, MinGW, las aplicaciones desarrolladas también pueden estar destinadas a diversas plataformas, cómo: Windows, MacOS, iOS, Linux/X11, Android, Windows Runtime.

Subir archivos al servidor

Imagen
Al momento de crear una aplicación web es normal que nos encontremos con la necesidad de almacenar archivos en el servidor, en este tutorial veremos cómo Spring MVC soporta la subida de archivos, en este ejemplo admitiremos la subida de imágenes que serán almacenadas en la base de datos y que luego recuperaremos para mostrarlas en la página correspondiente.

Tutorial Spring AOP

Imagen
La programación orientada a aspectos (AOP) es un paradigma de programación que intenta formalizar y representar de forma concisa los elementos que son transversales a todo el sistema, uno de estos elementos puede ser el sistema de logging (registro de eventos), mediante la utilización de la AOP es posible insertar código en los componentes ya construidos de nuestra aplicación sin necesidad de modificar el código existente.

Flujo óptico Gunnar Farneback

Imagen
El en tutorial anterior estudiamos el flujo óptico, vimos que es y mencionamos algunas de sus aplicaciones, además construimos una pequeña aplicación usando el método creado por Lucas-Kanade, esta vez veremos la función calcOpticalFlowFarneback(...) la cual calcula el flujo óptico mediante el algoritmo propuesto por Gunnar Farneback en el año 2003, este método a diferencia del anterior calcula el flujo para todos los puntos en la imagen.

Filtros de Servlet

Imagen
Los filtros son clases Java que nos permiten interceptar una petición y modificarla antes de que sea procesada por el Servlet, o interceptar una respuesta antes que que la misma sea enviada al cliente, para crear estas clases es necesario implementar la interface javax.servlet.Filter, la cual define los siguientes tres métodos que debemos implementar:

CVUI Construir GUI para OpenCV

Imagen
En muchas ocasiones cuando estamos desarrollando una aplicación requerimos cambiar los parámetros de entrada mientras nuestra aplicación se ejecuta, usualmente usamos el control trackbar, el ratón y el teclado para ello, esta opción no puede quitar mucho tiempo además de ser bastante limitado, otra opción que tenemos es recompilar la librería con Qt activado, esto requiere la inclusión de dicha librería, la opción más simple es utilizar cvui.h una pequeña biblioteca que nos permite generar GUI de manera rápida y sencilla sin tener que agregar dependencias externas.

Spark Tutorial de introducción

Imagen
Spark es un Framework Java diseñado para agilizar el proceso de creación de aplicaciones web, no requerimos inundar nuestro proyecto con anotaciones o con archivos de configuración XML, Spark hace uso del servidor embebido Jetty para alojar las aplicaciones por los que podemos iniciar fácilmente nuestras aplicaciones, veamos un pequeño ejemplo de inicio.

Flujo Óptico Lucas-Kanade con OpenCV

Imagen
El flujo óptico es una técnica de análisis de imágenes que permite determinar el movimiento de un objeto dentro de una secuencia de imágenes, se puede aplicar en: detección de movimiento, seguimiento de objetos, compresión de video, estabilización de videos, etc., la biblioteca OpenCV implementa varios métodos para calcular el flujo óptico, en este tutorial veremos el algoritmo propuesto por Lucas-Kanade.

Integrar Thymeleaf a un Servlet Java

Imagen
En el tutorial previo a este, vimos los Servlet, aprendimos a crearlos, instanciarlos y configurarlos, además escribimos el código necesario para responder a una petición HTTP GET, la respuesta a dicha petición la generamos usando la clase PrintWriter para escribir línea a línea el documento HTML de respuesta, esto suele ser un proceso tedioso, es ahí en donde entra Thymeleaf, esta tecnología nos permite generar un documento HTML dinámico a partir de una plantilla.

Servlet Java Tutorial básico

Imagen
Un Servlet es una programa Java que se ejecuta en un servidor web y que le permite al mismo generar contenido dinámicamente, el Servlet recibe una petición del usuario y genera una respuesta para la misma usualmente utilizando en protocolo HTTP, al momento de escribir este tutorial la versión más reciente de la especificación es la 3.1 la cual utilizaremos en nuestros ejemplos.

Ejecutar y depurar script Python en Visual Studio Code

Imagen
Usando Visual Studio Code podemos editar, ejecutar y depurar código Python, aprenderemos a utilizar esta herramienta para el desarrollo de nuestras aplicaciones, primero debemos instalar el complemento o extensión que nos permitirá trabajar con el interprete, luego debemos configurarlo para poder ejecutar y depurar los scripts.

Detección de esquinas con OpenCV

Imagen
La detección de esquinas tiene muchas aplicaciones en la visión por computador, entre ellas tenemos: creación de imágenes panorámicas, reconstrucción de objetos tridimensionales (3D), reconocimiento de objetos o figuras, estabilización de video, seguimiento, entre otras cosas.

Personalizar HTTP 403 Acceso denegado

Imagen
Hasta el momento ya hemos visto varios tutoriales del framework de seguridad Spring Security, seguro habrás notado que, si inicias sesión con un usuario he intentas acceder a una página a la cual el mismo no tiene permiso, verás el mensaje: Estado HTTP 403 - Access is denied, dedicaremos un par de minutos a estudiar la manera de personalizar este mensaje y mostrar una página más adecuada.

Recordar contraseña Spring Security

Imagen
La opción de recordar la contraseña le permitirá al usuario de nuestra web mantener su sesión abierta hasta que la misma sea cerrada manualmente o expire el tiempo definido, por ejemplo, el usuario podrá cerrar el navegar y luego puede abrirlo nuevamente y visitar la web sin tener que ingresar el nombre de usuario y contraseña, la sesión se cerrara solo cuando el usuario lo indique explícitamente o luego de haber transcurrido el periodo de tiempo de inactividad establecido.

Validación Vaadin Spring Boot

Imagen
Tercer tutorial de la serie Vaadin Spring Boot, en esta ocasión estará dedicado a la validación de los datos de entrada por medio de formularios, este framework nos proporciona una serie de clases para dicho propósito, también es posible crear nuestras propias implementaciones.

Transformaciones Geométricas

Imagen
Dedicaremos este tutorial al estudio de las transformaciones geométricas que podemos aplicar para cambiar la posición, rotación, escala, o inclinación de una imagen, este tipo de transformación no cambia el contenido de la imagen, la deformación es produce por un cambio en la posición de los pixeles que la componen.

Bloquear sesión con API Win32

Imagen
Usaremos la API de Windows para lograr bloquear la sesión de usuario de manera programática, en el sistema operativo Windows al presionar la combinación de teclas Crtl + Alt + Supr y luego presionar la opción bloquear logramos lo que ahora realizaremos desde programación C/C++, también veremos como podemos cerrar la sesión.

Uso del mouse y trackbar OpenCV

Imagen
El mouse y el trackbar son componentes de la GUI que nos ayudarán a interactuar con la aplicación OpenCV que estemos desarrollando, esta la biblioteca nos permite agregar manejadores de eventos para responder a eventos del ratón, de igual manera podemos agregar una barra desplazable a una ventana y obtener el valor de la misma.

Funciones de dibujo OpenCV Python

Imagen
OpenCV nos proporciona varias funciones que nos permiten dibujas diversas figuras de una menara rápida y sencilla, para este tutorial haremos uso del trackbar y el ratón para dibujar figuras como círculos, rectángulos y líneas, además veremos las funciones usadas para pintar elipses, polígonos y texto.Las funciones de dibujo tienen los siguientes parámetros en común:img: imagen sobre la que se desea dibujar, siempre es el primero que indicamos.color: color con que se debe pintar la figura.thickness: grosor del contorno de la figura, -1 rellena la figura, el valor por defecto es 1.lineType: define el tipo de línea,  por defecto es cv2.LINE_8, la opción cv2.LINE_AA usa anti-aliased por lo que el resultado será mejor, también puedes usar cv2.LINE_4.Para esta primera demostración crearemos una aplicación que nos permitirá dibujar líneas, círculos, y rectángulos usando el mouse, por ejemplo, para crear una línea hacemos clic izquierdo en el punto inicial de la misma y arrastramos hasta el …

Eventos en JavaFX

Imagen
Los eventos en la API JavaFX son parte importante en el desarrollo de una aplicación, un evento se produce cuando el usuario interactúa con l aplicación, por ejemplo, al hacer clic sobre un botón, al mover el mouse sobre algún Node de la escena, al presionar una tecla, o al seleccionar un elemento de una lista, entre muchas otras cosas.

Validación personalizada Spring MVC

Imagen
En tutoriales anteriores aprendimos a validar la entrada de los formularios usando el validador de Hibernate con las anotaciones correspondientes, una alternativa diferente es crear nuestra propia lógica de validación para un formulario en especifico, para utilizar esta funcionalidad necesitamos la anotación @InitBinder y además implementar la interface Validator.

Spring Boot Vaadin Hibernate JPA

Imagen
Seguimos trabajando sobre la integración del Framework Vaadin a Spring Boot, esta vez vamos a integrar la tecnología de persistencia Hibernate JPA, para este tutorial agregaremos la capa de datos a nuestra aplicación demostrativa y aprenderemos a mostrar los datos obtenidos en un elemento Grid<T> de la UI, también añadiremos un formulario que nos permitirá agregar, editar o eliminar un determinado elemento.

Integrar Vaadin a Spring Boot

Imagen
Integrar el Framework Vaadin a una aplicación web desarrollada usando Spring Boot, esta integración facilita el desarrollo de aplicaciones web, el módulo Spring MVC se encargará de manejar los componentes web, mientras que Vaadin será utilizado para la generación de la UI (Interfaz de Usuario), requerimos agregar el starter pom: vaadin-spring-boot-starter.

Spring Security JSP Taglib

Imagen
La tecnología o framework de seguridad Spring Security cuenta con taglib que nos proveen acceso a la información de seguridad del los usuarios y posibilitan el poder filtrar el contenido que se muestra al usuario en base a sus privilegios o tipo de usuario del que se trate, debemos agregar la siguiente dependencia: spring-security-taglibs.

Manipular pixeles OpenCV Python

Imagen
En este tutorial veremos como aplicar las operaciones básicas sobre imágenes cargadas en memoria mediante OpenCV, veremos cómo acceder a los pixeles de una imagen y modificarlos, aprenderemos a seleccionar una región de interés (ROI) y mostraremos como trabajar con los distintos canales de una imagen.

JFileChooser Java Swing

Imagen
El cuadro de dialogo JFileChooser de la API Java Swing nos permite ubicar y seleccionar de manera fácil y rápida un archivo o carpeta que se encuentre dentro del sistema de archivos de nuestro PC, para utilizar esta clase debemos importar: javax.swing.JFileChooser.

Spring Security con Hibernate JPA

Imagen
En tutoriales anteriores estudiamos el formulario de inicio de sesión, ahora, en este tutorial añadiremos la página de registro de usuarios, también aprovecharemos para ver como integrar la tecnología de persistencia Hibernate JPA a Spring Security, usaremos una base de datos HSQLDB para el proyecto, y además aprenderemos a utilizar la interface UserDetailsService para extraer los datos de autenticación y autorización desde los respectivos repositorios JPA.

Protección CSRF en Spring Security

Imagen
Los ataques de tipo CSRF (Cross‐site Request Forgery) buscan lograr que la victima ejecute peticiones maliciosas sin tener conocimiento de ello, en la web puedes encontrar información más detallada sobre este tipo de ataques, lo que nos interesa de momento es conocer como evitar este tipo de ataques en las aplicaciones web que utilicen Spring Security para su protección.

Introducción OpenCV Python

Imagen
Tutorial de introducción a la programación de aplicaciones de visión por computador usando la biblioteca OpenCV 3.x desde el lenguaje de programación Python 3.x, antes de empezar debes instalar las herramientas, si ya esta preparado, manos a la obra.

Instalar OpenCV en Python

Imagen
Instalación de OpenCV 3.2 sobre Python 3.6 en el sistema operativo Windows, para este tutorial utilizaremos las correspondientes versiones de 32 bits de estas aplicaciones, e instalaremos usando los binarios pre compilados, más adelante en otro tutorial aprenderemos a compilar el código fuente y generar los archivos necesarios para ejecutar desde Python.

Spring Security con Base de Datos

Imagen
Un tutorial más de la serie Spring Security, seguiremos trabajando con el proyecto que hemos utilizado desde el principio del curso, esta vez nos enfocaremos en la tarea de integración de una base de datos en donde se almacenarán los usuarios registrados, usando estos datos realizaremos la autenticación y autorización requeridos para poder acceder a nuestro sitio web protegido.

JavaFX ScrollBar y ScrollPane

Imagen
El Framework JavaFX nos ofrece dos componentes para habilitar el desplazamiento, el contenedor ScrollPane y el control ScrollBar, usaremos alguno de ellos cuando deseemos mostrar un contenido que sea demasiado grande y no quepa en la ventana, puede ser texto, imagen, video, etc., las barras de desplazamiento nos permitirán visualizar un área determinada.

Spring Security Formulario de Login JSP

Imagen
Este es el segundo tutorial de la serie de cursos sobre seguridad con Spring Security Framework, hoy aprenderemos como personalizar o crear nuestro propio formulario de login para nuestras páginas web, seguimos trabajando sobre el tutorial anterior por lo que es importante que lo leas si no tienes los conocimientos básico sobre esta tecnología, el enlace: introducción a la seguridad básica.

Instalar Compilador GNU GCC en Windows

Imagen
Para instalar el compilador GNU GCC y todas las herramientas de desarrollo que requerimos para programar aplicaciones utilizando este compilador utilizaremos una herramienta llamada MSYS2, la misma nos permitirá instalar el compilador GCC, G++, etc., y las demás herramientas en el sistema Windows usando comandos sencillos que nos permitirán instalar los paquetes deseados, trabajaremos de una manera similar a como se hace en Linux.

Tutorial Spring Security Básico

Imagen
Spring Security es un framework diseñado para manejar los mecanismos de seguridad de una aplicación, como: autenticación, autorización, protección, etc., este es un framework Java que puede ser utilizado tanto, en aplicaciones web, como en aplicaciones de escritorio estándar, dedicaremos el presente tutorial a la configuración básica de una aplicación web Spring MVC, en próximos tutoriales iremos viendo conceptos más avanzados.

CSSFX Herramienta JavaFX para CSS

Imagen
Esta herramienta nos facilitará la creación y prueba de los estilos CSS que apliquemos a una aplicación JavaFX, CSSFX monitorea los cambios que se produzcan en el archivo de estilos del programa, cuando se edite el archivo este se recargará automáticamente permitiéndonos ver los cambios de estilo en nuestra aplicación de manera instantánea.

Internacionalización (I18N) en JavaFX

Imagen
Usando la tecnología JavaFX es fácil programar aplicaciones con soporte para múltiples idiomas, a esto se le llama internacionalización o i18n para abreviar, es este tutorial desarrollaremos una pequeña aplicación con soporte para dos idiomas, español e inglés, luego podrás agregar más idiomas si lo deseas, la GUI multi-idiomas será creada usando FXML y la herramienta SceneBuilder que nos agiliza la creación de las mismas.

Convertir Markdown a HTML en Java

Imagen
Conversión de un documento en formato Markdown a HTML usando la biblioteca commonmark-java diseñada para tal propósito, crearemos una GUI usando JavaFX, por un lado tendremos un TextArea donde escribiremos el texto y del otro lado se mostrará el correspondiente texto convertido.

Procesamiento de imágenes en OpenCV

Imagen
Con OpenCV contamos con diferentes funciones que nos permiten procesar las imágenes de entrada, ya sea para resaltar o descartar zonas de la misma para su posterior análisis o simplemente si deseamos transformar la imagen original para mejorar el color, añadir un efecto, mesclar la imagen, etc., en este tutorial veremos algunas de estas funciones y aprenderemos a utilizarlas.En la primera parte veremos algunos filtros creados por nosotros en distintos tutoriales, luego veremos algunas funciones incluidas en la biblioteca.Pixelar una imagenPara lograr el efecto pixelado de una imagen analizaremos cada uno de los píxeles que componen la imagen y calculamos el valor promedio de los píxeles vecinos, para esto no utilizaremos una función OpenCV, creamos nuestra propia implementación, si deseas más detalles del algoritmo visita: pixelar una imagen con OpenCV.Filtro TwirlEste es un filtro que aplica una transformación 2D a la posición de cada uno de los píxeles de la imagen, este es otro de …

Detección de rostros

Imagen
OpenCV nos facilita la terea de detectar rostros o caras pues ya cuenta con clasificadores en cascada entrenados para esta tarea, estos son almacenados en archivos XML, en caso de que lo necesitemos podemos crear nuestros propios clasificadores para detectar el objeto para el que haya sido entrenado, por ejemplo: carros, animales, frutas, etc., en el archivo de descarga de la librería vienen incluidas varios de estos archivos y las aplicaciones necesarios para construir los nuestros.Detección de rostros en OpenCVPara detectar un rostro primero debemos procesar la imagen en la cual deseamos buscar un rostro, luego de cargar la imagen debemos aplicar los siguientes pasos:Convertir la imagen a escala de grises, necesario para el correcto funcionamiento de los algoritmos de detección de caras usados por la biblioteca. Para convertir una imagen a escala de grises o a otro formato contamos con la función cvtColor la utilizamos del siguiente modo:cvtColor(imagen, imagen, CV_BGR2GRAY);Lo sigu…

Conectar SQL Server con Java

Imagen
Conectar Java con SQL Server: una vez hayamos creado nuestra base de datos, seguramente necesitamos conectarla con una aplicación que realizaremos en un lenguaje de nuestra preferencia, si elegimos Java para conectar la base de datos debemos hacer lo siguientes pasos para conectarnos a la base de datos:Para realizar la conexión con una base de datos MySQL visita: Conectar Java con MySQL.Conectar Java con SQL ServerPrimero descargamos el controlador JDBC para SQL Server, nos dirigimos al siguiente enlace: descargar JDBC.Una vez ingresemos a la página indicada, tenemos dos versiones para descargar, una .exe y otro .tar.gz, ambos son iguales solo que el archivo .exe se extraerá automáticamente al darle doble clic. Una vez lo tengamos descargado, los descomprimimos y guardamos en una carpeta de nuestra preferencia.Creamos nuestra aplicación Java, en mi caso usaré el IDE Netbeans 8.x.Para conectarnos necesitaremos en siguiente código java:DB_Name es el nombre de la base de datos a la que d…

Evaluador de expresiones matemáticas

Imagen
Evaluar una expresión matemática como 2 + 6 * 3 puede ser fácil, pero una expresión pude ser mucho más compleja, como por ejemplo: (sin (35) ^ e-15) / tan (45), puede resultar más complicado, por lo que dedicaremos este tutorial al estudio del algoritmo que nos permitirá obtener el resultado de una operación aritmética como la mostrada.

Integración Apache Tiles con Spring MVC

Imagen
Apache Tiles es un framework que nos permitirá organizar de mejor manera la presentación de nuestro sitio web creado con Spring MVC, Tiles funciona como un sistema de plantillas en donde podemos crear pequeños fragmentos de código que pueden ser insertados en cualquier parte de nuestro sitio, organizaremos cada fragmento de modo que represente una parte de nuestra web, cabecera, barras laterales, pie de página, contenido principal, etc., de esta manera evitar la duplicación de código y se hace más fácil realizar cambios en cualquiera de las partes, no tendremos que realizar el cambio página por página.

TextFlow Panel JavaFX

Imagen
TextFlow es un contendor JavaFX diseñado para organizar elementos de tipo Text aunque también puede contener otros objetos Node, el TextFlow nos servirá para presentar texto enriquecido ya que cada uno de sus elementos de texto puede ser formateado con un estilo diferente, esto es útil por ejemplo si deseas mostrar código con distintos colores y formatos.

Buscar elemento en un TableView JavaFX

Imagen
Previamente hemos estudiado el control TableView de JavaFX por lo que en este tutorial desarrollaremos una pequeña aplicación para demostrar cómo podemos programar un cuadro de búsquedas para ubicar rápidamente un elemento que se encuentre dentro de este control, para esto utilizaremos una colección de tipo FilteredList<T>.

Verificar integridad de archivos checksum

El checksum es un número calculado con un algoritmo que es aplicado a un conjunto de bytes, por lo general es utilizado para comprobar la integridad de un archivo, por ejemplo al descargar un archivo de la web comprobamos si el checksum del archivo descargado coincide con el proporcionado por la página web, de ser así el archivo ha sido descargado correctamente.

Filtros de imágenes por convolución de matrices

Imagen
Un filtro de imagen es un procedimiento que se aplica a una imagen para resaltar o mejorar algunas características de la misma, para lograr esto se modifica la matriz que compone la imagen aplicándole un determinado procedimiento, en este tutorial estudiaremos el procedimiento llamado convolución de matrices.