Atajos en Eclipse o RAD

Cuando programar se nos vuelve simple y una lata del día a día, es necesario acortar ciertos códigos que usamos con más frecuencia como por  ejemplo escribir el método principal, un ciclo o una condición, y es para eso que existen los IDE’s, para facilitarnos la tarea de escribir tanto código y hacer del desarrollo algo mas manejable.

En las siguientes tablas se presentan algunos atajos de teclado que son usados con mas frecuencia en Eclipse o Rational Application Developer (que es practicamente un clon de eclipse para IBM).

Atajos simplificadores de acciones

Atajo Descripción
CTRL + H Carga la ventana de búsqueda
CTRL + E Acceso a los ficheros que ya están abiertos
CTRL + O Acceso a los atributos y métodos de esa clase
CTRL + O (2 veces) Igual que el anterior pero añadiendo los atributos y métodos de las clases padre
CTRL + L Acceso a la línea indicada
CTRL + K Rastrea la variable seleccionada
CTRL + F Buscar / Reemplazar una palabra
CTRL + D Eliminar la fila
CTRL + SUPR Eliminar la siguiente palabra
CTRL + RETRO Eliminar la anterior palabra
CTRL + MAY + SUPR Eliminar hasta el final
CTRL + Q Volver a la anterior pestaña de edición
CTRL + 3 Cargador de vistas
CTRL + MAY + F Formatea el texto según lo configurado
CTRL + MAY + S Guarda todos los documentos abiertos
CTRL + MAY + O Organizador de imports (añadiéndolos si faltan)
CTRL + MAY + T Buscador de tipos en el workspace
CTRL + MAY + R Acceso a la búsqueda de recursos
CTRL + 7 Comenta el texto seleccionado

Atajos para simplificar escritura de código

Acción Atajo Descripción
Crear metodo main Escribir main,pulsar CTRL + ESPACIO y seleccionar main method Implementa : public static void main (String[] args){ }
Impresion rápida por consola Escribir syso y pulsar CTRL + ESPACIO Implementa : System.out.println();
Sentencia IF Escribir if,pulsar CTRL + ESPACIO y seleccionar la opción statement Implementa : if (condition) {} o con la opción else
Bucle DESDE (for) Escribir for,pulsar CTRL + ESPACIO y seleccionar la opción Implementa : for (int i = 0; i < array.length; i++) {} u otras opciones
Bucle MIENTRAS (while) Escribir while,pulsar CTRL + ESPACIO y seleccionar la opción Implementa : while (condition) {} u otras opciones
Bucle REPETIR HASTA (do..while) Escribir do,pulsar CTRL + ESPACIO y seleccionar la opción Implementa : do {} while (condition);

 

Con esto queda archicomprobado lo excelente que resulta conocer ciertos atajos y el potencial que nos brinda Eclipse a los desarrolladores.

Fuente: www.adictosaltrabajo.com

byangerrising

Hash criptográfico para contraseñas

Bueno bueno, como siempre con falta de tiempo para poder siquiera escribir unas cuantas líneas en mi querido blog, quien me viene ayudando desde ya hace un buen tiempo, esta vez les traigo unos cuantos tips para la ocultación de contraseñas tanto por el lado del cliente como del servidor, por ello veremos ambas formas:

CLIENTE

Por el lado de cliente tenemos el lenguaje javascript como lenguaje de interacción con los usuarios y por ende es la única forma de encriptar los datos que deseemos, en paj’s home han creado unos scripts que nos hacen la vida mas fácil como programadores al momento de aplicar MD4, MD5 o SHA-1 como medio de encriptación  por ello debemos descargar el documento js que deseemos ocupar, donde en mi caso prefiero SHA-1 por ser mas difícil de corromper que MD5, la lista de archivos es la siguiente:

y para implementarlo debemos hacer lo siguiente:

dentro de los tag <head> y </head> importamos primero las librerías correspondientes

<script type="text/javascript" src="md4.js"></script>
<script type="text/javascript" src="md5.js"></script>
<script type="text/javascript" src="sha1.js"></script>

y luego aplicamos la función de la siguiente manera

 <script type="text/javascript">
   hash = hex_md4("hola mundo"); /* MD4 */
   alert("MD4");
   alert(hash);
   hash = hex_md5("hola mundo"); /* MD5 */
   alert("MD5");
   alert(hash);
   hash = hex_sha1("hola mundo"); /* SHA-1 */
   alert("SHA-1");
   alert(hash);
 </script>

SERVIDOR

Y en cuanto a la encriptación por el lado del servidor encontré una clase bien buena para java que permite encriptar un String en diversos formatos como MD2, MD5, SHA-1, SHA-256, SHA-384 y SHA-512 la cual podemos descargar desde aquí para hacer uso de esta clase debemos hacer lo siguiente:

importamos la clase desde donde llamaremos

import gob.sgip.comunes.StringMD;

y luego desde algún método llaman a la clase directamente sin necesidad de instanciarla debido a que el método es estático donde por parámetro le mandamos dos valores, el primero correspondiente a la cadena que deseamos encriptar y el segundo correspondiente al método de encriptación de los antes mencionados, donde esto se haría así

StringMD.getStringMessageDigest("Cadena a encriptar", "SHA-1");

bueno espero que les sirva y cualquier comentario es bienvenido

saludos

Fuente: anieto2k

Hibernate – parte II

Bueno, anteriormente vimos como poder realizar la conexión desde Netbeans a la base de datos, pues esta vez veremos cómo configurar Hibernate dentro de un proyecto web gracias a este potentísimo IDE, así que no más palabras y manos a la obra.

1.- Lo primero que debemos hacer es crear un nuevo proyecto del tipo web aplication, al cual le pondremos como nombre aplicacionHibernate , en la configuracion del servidor usaremos GalssFish v3  y por ultimo seleccionamos el framework que deseamos integrar a nuestro proyecto, en este caso utilizaremos solamente Hibernate 3.2.5 donde al seleccionarlo nos mostrará un listado de conexiones a base de datos de Netbeans, escogemos la que creamos anteriormente llamada prueba (ver figura 1.1) y finalizamos.

Fig. 1.1 – Selección de framework Hibernate.

2.- la jerarquía generada por netbeans es como lo muestra la figura 2.1 y como podemos apreciar, en la carpeta de “source Packages” tenemos un package por defecto que contiene un archivo de configuración llamado “hibernate.cfg.xml” el cual contiene todos los parámetros de conexión de con la base de datos, lamentablemente este archivo de configuración al ser generado automáticamente por nuestro IDE no está del todo bien, por lo que debemos añadir la siguiente sentencia dentro del nodo <session-factory>:

<property name=”hibernate.current_session_context_class”>thread</property>

Fig. 2.1 – Jerarquía de la aplicación generada por Netbeans.

3.- Una vez que ya tenemos la base del proyecto se debe crear un archivo de ingeniería reversa para permitir a hibernate poder acceder a la base de datos, para ello hacemos clic derecho sobre la carpeta “Source Packages” y seguimos la siguiente ruta dentro del menú “New/Other…”; nos aparecerá una nueva ventana donde seleccionamos la categoría “Hibernate” y nos aparecerá en el otro modulo un listado de opciones, seleccionamos la de ingeniería reversa o también llamado como “Hibernate Reverse Engineering Wizard” hacemos clic en siguiente; escogemos un nombre para el archivo, yo por lo menos lo dejaré tal cual y le damos en siguiente; esta vez nos aparecerá una ventana que se conecta a la base de datos mostrando las tablas disponibles del esquema al cual estamos conectados como muestra la figura 3.1, las agregamos todas y finalizamos.

Fig. 3.1 – asistente de creación de archivo de ingeniería reversa.

Esta configuración realizará un mapeo de la base de datos a la que accederemos, donde en el archivo podremos ver datos como el esquema al que estamos conectados y las tablas que posee este.

4.- a continuación debemos crear los POJOS de las tablas de nuestra base de datos, por cada una que haya en ella, estos nos permitirán recrear cada tabla del esquema de base de datos en forma de clases, para ello crearemos primero un nuevo package donde guardaremos las clases de mapeo y le llamaremos  “test.hibernate.mapping”, una vez creado el package  hacemos clic derecho sobre él y seguimos la siguiente ruta en el menú “new/Other…” luego aparecerá una nueva ventana y seleccionamos la categoría “Hibernate” y luego el tipo de archivo de POJOs o “Hibernate Mapping Files and POJOs from Database” hacemos clic en siguiente y dejamos la configuración como podemos apreciar en la siguiente figura:

Fig 4.1 – Asistente de configuración para POJOs.

Luego simplemente finalizamos y podremos ver como aparecieron clases con el mismo nombre de las tablas y además unos archivos con extensión hbm.xml los cuales realizan el mapeo entre la clase y la tabla de la base de datos.

5.- Finalmente crearemos un archivo HibernateUtil para ello hacemos click derecho sobre la carpeta “Source Packages” y nos vamos a “new/Other…” seleccionamos la categoría Hibernate y escogemos crear una clase de tipo HibernateUtil, hacemos click en siguiente y lo configuramos como se ve en la siguiente imagen:

Fig 5.1 – Asistente de configuración para HibernateUtil.

la jerarquía de clases nos debería quedar de la siguiente forma:

Fig 5.2 – Jerarquía del proyecto al implementar Hibernate.

Bueno hasta el momento ya hemos creado la conexión a la base de datos y ahora con estos pasos ya tenemos la base para poder realizar transacciones con nuestra base de datos, en el próximo tutorial veremos como poder.

Como nombrar packages en tu aplicación java

Como recién egresado e insertándome al mundo laboral me he visto con la necesidad de desarrollar un sistema web para los departamentos de Gendarmería de Chile, siempre necesité saber cómo organizar los packages de forma que al ir agregando clases y luego al recurrir a ellas me fuese fácil poder reconocer el package al que pertenecen, no fue hasta ahora que me vi obligado a averiguar sobre este tema cuando por fin he pillado un post de un colega Argentino que nos explica claramente cómo debemos organizarlos de forma eficiente, a quien se le agradece enormemente la publicación de este.

Los modismos en Java existen como en cualquier otro lenguaje de programación. Estos hacen claramente más fácil la vida de todos los programadores en particular aquellos que mantienen las aplicaciones y tienen que lidiar con el código escrito por otros. Usar convenciones de un lenguaje en particular es mostrar compasión por aquellos mantenedores que en el futuro cercano van a tocar y retocar el código escrito originalmente.

En este artículo vamos a ver como nombrar packages en java.

Primero vamos a mostrar los 2 tipos de agrupaciones de clases que creo son más comunes.

Package by Layer (por capas)

* com.wow.dao
* com.wow.util
* com.wow.file

Package by Feature (por categoria)

* com.wow.customer
* com.wow.seller
* com.wow.product

¿Ahora… qué diferencia hay entre estas dos clasificaciones? Básicamente si tu cerebro está poblado por más de una neurona, este va a darse cuenta que toda aplicación hace cosas básicas, lo cual va a requerir que tengas un set de funciones base para quizá todas ellas. Que es esto? un framework, si, un set de funciones básicas las cuales pueden ser portadas a través de varias aplicaciones sin ser modificado ni adaptado para cada una de ellas.

En tu framework vas a tener que hacer clases reusables y agruparlas por Layer ya que no vas a tener ningún código específico de alguna aplicación en específico. Tus clases ahí serán DatabasePool, StringUtil, FileWriter, etc. Nada que tenga que ver con la aplicación en sí.

Ahora, imagínate que estás haciendo una aplicación de Stock, entonces vamos a usar aquí, con las clases especificas de tu app la clasificación segunda, package by Feature. Porque? porque desde estos packages específicos vas a llamar y utilizar el framework, pero es altamente probable que estas clases no sean reutilizadas ni extensibles para otros desarrollos.

“Todo conocimiento tiene por sí mismo algún valor, no hay nada tan pequeño e insignificante que yo no prefiera conocer a ignorar.”
Ben Jonson

Fuente: rodrigo asensio


https://angerrising.wordpress.com/2010/06/06/1063/

Hibernate – parte I

Hibernate es una herramienta de Mapeo objeto-relacional para la plataforma Java (y disponible también para .Net con el nombre de NHibernate) que facilita el mapeo de atributos entre una base de datos relacional tradicional y el modelo de objetos de una aplicación, mediante archivos declarativos (XML) que permiten establecer estas relaciones.

En este tutorial se dividirá en 3 partes

  • Configuración BD en Netbeans
  • Configuracion Hibernate
  • Realizar Insert, Select, Delete y Update con Hibernate

El software requerido para este tutorial es el siguiente:

  • JDK versión “1.6.0_17”
  • Netbeans 6.7.1
  • Mysql

Teniendo instaladas dichas herramientas podemos empezar configurando nuestra base de datos, para ello abrimos el cliente de líneas de comando de mysql para acceder a ella, lo primero que nos consultará es la password, la escribimos y nos aparecerá la siguiente información:

Luego creamos un esquema de base de datos ingresando el siguiente comando:

mysql> create database prueba;
Query OK, 1 row affected (0.11 sec)

Ahora accedemos a la base de datos creada, creamos la tabla e ingresaremos un solo valor para comprobar más adelante si la conexión se ha realizado correctamente

mysql> use prueba;
Database changed

mysql> create table usuarios(
-> id int(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> nick varchar(40) NOT NULL,
-> email varchar(60),
-> web varchar(100));

Query OK, 0 rows affected (0.23 sec)

mysql> insert into usuarios
-> values(null, ‘angerrising’, ‘x@gmail.com’, ‘https://angerrising.wordpress.com&#8217;);

Query OK, 1 row affected (0.05 sec)


Ahora estamos listos para poder realizar la conexión desde nuestro IDE (Netbeans), lo primero que haremos será crear un proyecto JSE cualquiera, yéndonos al menú “File>New Project>Java>Java Application” y le ponemos como nombre aplicacionHibernate, quedándonos el siguiente árbol en nuestra aplicación:

Ahora en el menú lateral izquierdo tenemos tres pestañas llamadas: Project, Files y Services; seleccionamos esta ultima y hacemos clic derecho sobre el primer icono que se llama “Databases” y luego hacemos clic en “New Connection…”, nos aparecerá la siguiente ventana:

Y ahora ingresamos la siguiente información:

Name: Seleccionamos MySQL (Connector/J driver)
Host: localhost
port: 3306 //Ese es el puerto por defecto
Database: prueba
User Name: root
Password: ******** //Ingresamos nuestra contraseña

Finalmente presionamos aceptar y en el menú lateral izquierdo nos aparecerá lo siguiente:

Finalmente haremos una consulta para comprobar que realmente nos conectamos a la base de datos correspondiente, para ello hacemos clic derecho sobre la carpeta “Tables” y luego seleccionamos la opción “Execute Command…”, se nos abrirá una ventana y ejecutamos  la siguiente query:

“select * from usuarios”

Y nos mostrará lo siguiente:

Y bueno, así con la configuración de MySQL y la conexión de la base de datos en Netbeans, en el próximo tutorial configuraremos una conexión básica con Hibernate gracias a Netbeans ;D saludos.

Comparativa entre J2EE, ASP.NET y PHP

Lenguajes de Programación

Bueno porque estoy apurado por aprender j2ee caigo en diversas blog y sitios ineteresantes, esta vez pillé una entrada que he visto que se va repitiendo en varios blogs y que quiero correr el dato también, esta trata sobre una comparación de los 3 lenguajes mas utilizados para el desarrollo web y j2ee es una de ellas, está claro que soy un fiel user de JAVA pero a PHP no le hago el quite, solo a ASP .net que odio, pero buenocada quien con su lenguaje favorito.

  • Sintaxis: Java es el que mejor sintaxis tiene, PHP aún usa ‘::’ y ‘->’ y algunas funciones podrían ser usadas dentro de los objetos y no como procedimientos. Para ASP.NET lo más sencillo es VB.NET.
  • Curva de aprendizaje: PHP es el más sencillo, aunque a mí me pasa que siempre tengo que estar mirando en algunas funciones el orden de los parámetros porque a veces no siguen la misma lógica. ASP.NET también es bastante sencillo y J2EE el más complicado de aprender.
  • Velocidad de desarrollo: ASP.NET es el más rápido, debido a la cantidad de componentes que tiene que te hacen todo el trabajo. PHP es rápido si se usa algún framework. J2EE es el más lento.
  • Plataforma: PHP trabaja mejor en LAMP, aunque funciona también en otras plataformas, ASP.NET es Windows y J2EE trabaja bien en cualquier plataforma.
  • Base de datos: normalmente es MySQL para PHP, Oracle para J2EE y MSSQL para ASP.NET.
  • IDE (Integrated Development Environments): ASP.NET tiene Visual Studio que es una gran aplicación, pero de coste elevado. J2EE tiene varias herramientas comerciales, pero Eclipse es la mejor (incluso alguna de las comerciales como WASD está basada en Eclipse). Para PHP no existe una que destaque sobre las demás, aunque también puedes usar Eclipse.
  • Soporte orientado a objetos: J2EE y ASP.NET son los mejores, aunque PHP ha mejorado en las últimas versiones.
  • Seguridad: J2EE parece el más seguro, aunque PHP tiene mala fama, pero es debido sobre todo a los desarrolladores, no al lenguaje de programación. ASP.NET tiene también mala fama debido a fallos de seguridad debidos a Windows.
  • Rendimiento: Suele ganar PHP en cuestión de velocidad y recursos. J2EE es más pesado, parecido a ASP.NET.
  • Servidor Web: ASP.NET solo funciona con IIS, PHP y J2EE tiene versiones comerciales y open source.
  • Librerías y Frameworks: Todos tiene muchas librerías y frameworks disponibles, siendo para PHP y J2EE la mayoría gratuitas y open source.
  • Soporte y comunidad: para ASP.NET la mayoría de los foros, grupos de usuarios y comunidades de desarrolladores están manejados por Microsoft, mientras que para PHP y J2EE existen muchos grupos independientes.
  • Coste: PHP es la alternativa totalmente gratuita, ASP.NET tiene licencias bastante caras, mientras que J2EE puede desarrollarse con herramientas gratuitas y de pago.

Fuente: nogritesquenovendesnada