Ir al contenido principal

Entradas

Mostrando las entradas de 2009

Hanoi.... para las masas

Un problema muy típico de lenguaje de programación es la muy conocida estructura de torres de hanoi. Es algo básico que tiene cualquier programador. El programa trata de despertar la recursividad (recurrencia) que está en el programador para mostrarle la solución sencilla a un problema aparentemente complejo: En suma, se tienen 3 torres con 3 anillos de diferente tamaño colocados en orden: La idea es llevar los 3 anillos de la primera a la última torre con dos reglas muy sencillas: - No se puede llevar varios anillos a la vez, tiene que ser de uno en uno - El anillo que coloques en una torre debe estar obligatoriamente sobre otro más grande El problema típico es hacer un programa que, como input=3 obtengas: De 1 a 3 De 1 a 2 De 3 a 2 De 1 a 3 De 2 a 1 De 2 a 3 De 1 a 3 Lo partimos así porque el primer bloque es en realidad hanoi con 2 anillos llevando de torre 1 a torre 2, vamos a ponerlo: hanoi(2, t1, t2) El tercer bloque es en realidad hanoi con 2 anillos llevando de torre 2 a torre

Un poco tarde, pero DAO al fin

Hace mucho tiempo que quería escribir este artículo sobre el DAO, pero no había tenido el impulso necesario para hacerlo. No sé bien lo que me impulsa ahora, pero aquí está. Luego de averiguar por todo lado la mejor manera de hacer esto (conectarse y recuperar datos de una BD de manera ordenada y escalable) descubrí el DAO , un poco tarde ya que al año siguiente salió la versión beta de JPA y claro, todo el DAO se derrumbó (o comenzó a derrumbarse...) La versión de JAVA basa todo su modelo en esta relación fundamental de 4 componentes: En el caso del DAO con todas las recomendaciones integradas, tendrás un grupo de clases (DAO, DTO y otras de acuerdo a implementación) por tabla (por ejemplo Persona) por motor de base de datos o persistencia que desees utilizar: XML, Mysql, archivos, etc; donde no necesitas más que lo siguiente para hacer un select * from: FactoryDAO factory = FactoryDAO.getOrCreate(); PersonaDAO dao = factory.newPersonaDAO(); Vector lista = dao.getTodos(); Lo elegante

El paceño, potosino, cochala, sucrense y orureño que no quiere ser colla

Este es un post racista (para algunos); para todos los demás autónomos, ganaderos, terroristas, separatistas de este país trata de ser una reflexión que creo compartir con todos y que además quisiera compartir con el resto de paceños, potosinos, cochalas, sucrenses, orureños y en general para todo aquel que por sus facciones, forma de hablar u otros pueda ser tildado de colla. En wikipedia: "Colla se utiliza para denominar a los descendientes aymaras (en su mayoría indígenas o indios) de los departamentos de La Paz, Oruro, y Potosí de Bolivia. Estos departamentos están ubicados en la zona occidental del país. Ocupan mayormente zonas de clima montañoso de los Andes aunque también en áreas tropicales. Los rasgos más sobresalientes de un colla son unas mejillas rojizas y secas quemadas por el frío de los andes bolivianos, tienen rasgos asiáticos, la piel algo más oscura que la de los demás grupos étnicos de Bolivia. El actual presidente boliviano don Evo Morales Aima, es un indígena

Algo light... muy light... java / mysql

Algo que todo el mundo no se cansa de tenerlo cerca, una guí breve y rápida para lograr conectar un programita Java con una base de datos Mysql. Las partes del Logger las pueden quitar (import + log.info + log.error). package capadatos.test; import java.net.URL; import java.sql.*; import org.apache.log4j.Logger; import org.apache.log4j.PropertyConfigurator; /** * Esta clase es nada más para realizar un test contra una base de datos * Mysql. El script de la tabla a la cual se hace consulta sigue a * continuación: * * create table persona ( * id int(10) unsigned NOT NULL auto increment, * nombre varchar(100) default NULL, * fechaNacimiento datetime NOT NULL, * salario float NOT NULL, * PRIMARY KEY (id) * ); */ public class TestMySql { private static Logger log = Logger.getRootLogger(); public static void main(String[] args) { String resource = "/auditoria.properties"; URL configFileResource = TestMySql.class.getResource(resource); PropertyC