Este blog pretende recopilar ideas que me van surgiendo con los días y compartirlas con los demás.
16 abril 2009
Ordenar un HashMap (HasMap)
//Ordenar un Map por Key
Map miMap= new HashMap();
miMap.put("2", "valor2");
miMap.put("1", "valor1");
miMap.put("4", "valor4");
miMap.put("3", "valor3");
Map mapOrdenado = new TreeMap(miMap);
Set ref = mapOrdenado.keySet();
Iterator it = ref.iterator();
while (it.hasNext()) {
System.out.println((String)it.next());
}
//Ordenar Map por Valor
HashMap mapResultado = new LinkedHashMap();
List misMapKeys = new ArrayList(miMap.keySet());
List misMapValues = new ArrayList(miMap.values());
TreeSet conjuntoOrdenado = new TreeSet(misMapValues);
Object[] arrayOrdenado = conjuntoOrdenado.toArray();
int size = arrayOrdenado.length;
for (int i=0; i<size; i++) {
mapResultado.put
(misMapKeys.get(
misMapValues.indexOf(
arrayOrdenado[i])
),arrayOrdenado[i]);
}
Iterator it1 = mapResultado.values().iterator();
while (it1.hasNext()) {
System.out.println((String)it1.next());
}
Espero que os sirva.
29 marzo 2009
Covertir un CLOB a String (java oracle)
private String CLOBToString(CLOB cl) throws IOException, SQLException
{
if (cl == null)
return "";
StringBuffer strOut = new StringBuffer();
String aux;
BufferedReader br = new BufferedReader(cl.
while ((aux=br.readLine()) != null)
{
strOut.append(aux);
}
return strOut.toString();
}
15 marzo 2009
Nosotros dando y ellos gastando
Si se sigue sin arreglar desde el fondo esta crisis será muchísimo más larga de lo que nos cuentan.
13 enero 2009
Deja las drogas y ponte con un huevo kinder y una radio
01 enero 2009
02 diciembre 2008
18 septiembre 2008
29 agosto 2008
La Frase
Samuel Beckett
Gracias Dolo y Marga.
15 junio 2008
Xml a Object, Object a Xml. Xstream
Por ejemplo , supongamos que tenemos el siguiente xml que se corresponde con la clase posterior:
< com.jnovo.vgn.fachada.implementacion.vo.usuariovo>
< nombre>
jorge
< /nombre>
< apellido>
Novo
< /apellido>
< /com.jnovo.vgn.fachada.implementacion.vo.usuariovo>
tendremos una clase como esta
package com.jnovo.vgn.fachada.implementacion.vo;
import java.io.Serializable;
import java.util.Map;
/**
* @author Administrador
*
*/
public class UsuarioVO {
private String nombre;
private String apellido;
public void setNombre(String nombre) {
this.nombre = nombre;
}
public void setApellido(String apellido) {
this.apellido= apellido;
}
public String getNombre() {
return nombre;
}
public String getApellido() {
return apellido;
}
}
si llamas a la clase Xstream
UsuarioVO usuario = new UsuarioVO();
XStream xstream = new XStream();
String xml = xstream.toXML(usuario); --->esto te convierte la clase a un xml
UsuarioVO usuario = (UsuarioVo)xstream.fromXML(xml); ----> convierte un xml a un objecto.
espero que os sirva, sobre todo aquellos que utilizais webservices de .Net llamados desde axis que tienen datasources dentro de un campo string.
31 enero 2008
La educación de tus hijos por Emilio Calatayud Pérez
18 enero 2008
Accésit Pérez Lugín 2007 a Manuel Rodríguez García
"Pasados unos minutos, la niña disparó la pregunta: ¿Qué es la vida? Oriana balbuceó unas frases dubitativas, le habló a su sobrina de los árboles que viven y mueren"
Muchísimas Felicidades Manuel Rodríguez García
13 enero 2008
Con Z de Zgae
Hoy me hago eco del impuesto injusto y poco democrático que el gobierno español nos impone a todos los españoles con el canon digital. Pagamos porque todos podemos ser piratas.
Si queréis más información o ver las diferentes iniciativas que hay en la red ir a la página de la "Asociación de Internautas"
Siempre hay más opciones que declarar que todos los españoles pueden ser piratas.
02 enero 2008
16 noviembre 2007
Al final la abuela bloguera lo consigue
Enhorabuena "Abuela".
Galicia como potencia bloguera
11 noviembre 2007
Mi nuevo roouter LinkSys WRT54GS
Hace unos meses me compraba un router SMCWBR 14-G2, y estaba contentísimo hasta que lo probé con mis programas p2p favoritos (Azureus, Emule y Ares), fue cuando me di cuenta que ese router wifi no servía para mis propósitos. La utilización del mismo no fue vía wifi sino con conexión de red directa y aun así el router se quedaba totalmente colgado, debido a un problema de memoria que era saturada por las multiples conexiones abiertas que creaba el emule.
Esta situación me llevó a cambiarlo por uno nuevo (estaba hasta las narices tener que reiniciarlo), así que me decidí por un LinkSys y si, esta vez si, que fue una correcta elección, lo puedo tener días y días encendido con el emule con un tope máximo de 2.500 conexiones.Va como un tiro, sin tener que reiniciarlo, así que al final vale la pena gastarse unos eurillos más y no estar sufriendo con cuelgues.
Esto no quiere decir que el otro router sea malo, simplemente que no cubre mis necesidades.
06 noviembre 2007
Logotipo A Coruña 800 Aniversario
Rodrigo hace una reflexión sobre la gente que nos manda, gente que sigue pensando que lo de fuera es mejor.
¿Por qué la gente gallega se va fuera de su país a trabajar,cuando es gente con altos conocimientos ?. ¿Por qué se sigue contratando a empresas de fuera de Galicia?.
Os dejo el post que no tiene desperdicio sobre el perfecto análisis del logo.
"
A Coruña v8.00
La ciudad se acerca al 800 aniversario y con esta ocasión el Ayuntamiento estrena logotipo conmemorativo.
¿Es feo? ¿Es bonito? ¿Es adecuado…?
En mi opinión. el Ayuntamiento escogió un logo que no tiene personalidad. Si querían algo moderno e "impactante",
acabaron en el web 2.0 style (deberían añadirle un icono de "technorati this").
Y ese "a" amarillo como un sol y el azul claro del mar Mediterráneo, que en la Coruña es de color del plomo me lleva a otras latitudes.
La tipografía redondeada es como las dunas de Riazor, los tejados ondulados de uralita, el perfil suave y sereno de su costa o la calma del puerto y de la industria pesada en los polígonos industriales.
Hubo criticas porque la empresa ganadora del concurso es de Valencia.
Creo que mal supieron transmitir nuestra esencia, pero ellos poca culpa tienen. ¿No hubo diseños gallegos que nos retratasen mejor? seguro que si, talento hay.
El problema del talento es que choca contra tanto político que tenemos, que en la búsqueda de la modernidad se olvidan que para caminar hacia delante es preciso el pie que se queda detrás. "
Aquí hay una discusión más técnica sobre el tema
03 noviembre 2007
Un blog gallego en Premios BOB's
http://amis95.blogspot.com/ y supongo que lo conocéis porque hace unos meses salió en todos los medios, ya que la blogera tenía 95 años.
Espero que gane y que el año que viene haya otro blog gallego nominado.
Por cierto mucha suerte a María Amelia espero que gane.
19 octubre 2007
Categorias en blogger mediante etiquetas
La forma es muy sencilla y es utilizando los tags o etiquetas que el nuevo sistema blogger te permite asignar a las entradas nuevas o a las que ya tenías antes.
Por ejemplo, si a una entrada o post le asignas una categoría de "cocina" podrás acceder a esa categoria yendo a la siguiente url http://unpoquitindetodo.blogspot.com/search/label/cocina, por lo que lo único que queda por hacer es una nueva sección (en mi caso en la columna derecha) donde haré referencia de la forma anterior a todos los tags
04 septiembre 2007
Ordenar un List de Objectos mediante Comparator
public class ClaseA{
private String titulo;
private Date fechaDate;
public long getFechaLong() {
return fechaDate.getTime();
}
public void setFechaLong(long fechaLong) {
this.fechaLong = fechaLong;
}
}
y lo que queremos es ordenar ese List por un campo de la clase deberemos crear un método estático final java.util.Comparator como el que pongo debajo, la ordenación se hace por el campo fechaDate del tipo java.util.Date
public static final Comparator COMPARA_FECHAS_ClaseA = new Comparator() {
public int compare(Object o1, Object o2) {
if (o1 == o2 || !(o1 instanceof ClaseA ) || !(o2 instanceof ClaseA )) {
return 0;
} else {
ClaseA r1 = (ClaseA) o1;
ClaseA r2 = (ClaseA ) o2;
long date1 = r1.getFechaLong();
long date2 = r2.getFechaLong();
return date1 <= date2 ? ((int) (date1 >= date2 ? 0: 1)): -1;
}
}
};
este método lo metemos en nuestra clase ClaseA quedando como aparece debajo:
public class ClaseA{
private String titulo;
private Date fechaDate;
public long getFechaLong() {
return fechaDate.getTime();
}
public void setFechaLong(long fechaLong) {
this.fechaLong = fechaLong;
}
public static final Comparator COMPARA_FECHAS_ClaseA = new Comparator() {
public int compare(Object o1, Object o2) {
//comprueba si los objectos que le llegan son del tipo de la clase
if (o1 == o2 || !(o1 instanceof ClaseA ) || !(o2 instanceof ClaseA )) {
return 0;
} else {
ClaseA r1 = (ClaseA) o1;
ClaseA r2 = (ClaseA ) o2;
long date1 = r1.getFechaLong();
long date2 = r2.getFechaLong();
// realiza las operaciones de comparación entre las fechas de las clases o1 y o2
return date1 <= date2 ? ((int) (date1 >= date2 ? 0: 1)): -1;
}
}
};
}
Para poder utilizar la ordenación solo hay que llamar al método de la siguiente forma:
List
// aquí introducirías todos los objectos ClaseA
//Esta es la parte que ordena ese List
Collections.sort(listClasesA, ClaseA.COMPARA_FECHAS_ClaseA);
espero que os sirva ;-)