Google

lunes, 16 de febrero de 2015

PostgreSQL - Recuperar archivo sql desde consola

Para recuperar un archivo .sql desde consola se debe escribir la siguiente instrucción en la consola, en este caso simbolo de sistema de Windows:

psql.exe -U postgres -d tu_base_de_datos -f "C:\xampp\htdocs\btc.sql"


viernes, 27 de septiembre de 2013

Ejecutar aplicación externa con Java


El siguiente código permite ejecutar una aplicación externa desde un programa desarrollado en java

        try {
            Process process = Runtime.getRuntime().exec("D:\\cole2k.exe");
            InputStream inputstream = process.getInputStream();
        } catch (IOException e) {
            e.printStackTrace();
        }

En lugar de D:\\cole2k.exe , se debe colocar el nombre del programa a ejecutar.

Además, se pueden pasar parámetros a los programas, para que los mismos se ejecuten de una manera determinada.

En mi caso quise instalar el programa cole2k pero quería que la instalación se hiciera en forma desatendida.

Existe un programa llamado Universal Silent Switch Finder que muestra los parámetros soportados por la aplicación a ejecutar, aunque no todas las aplicaciones están soportadas.

Por lo tanto en mi caso lo que hice fue ejecutar el programa pasando el parámetro correspondiente para que el codec se instalara en forma desatendida, quedando:

        try {
            Process process = Runtime.getRuntime().exec("D:\\cole2k.exe /S");
            InputStream inputstream = process.getInputStream();
        } catch (IOException e) {
            e.printStackTrace();
        }

martes, 3 de septiembre de 2013

Seleccionar una fila de JTable con el botón Derecho

Para seleccionar una fila de un JTable con el botón derecho se debe utilizar el siguiente código:

        tabla.addMouseListener(new MouseAdapter() {
                                   public void mousePressed(MouseEvent e) {
                                       if ( SwingUtilities.isLeftMouseButton(e)) {
                                         
                                       } else {
                                            if ( SwingUtilities.isRightMouseButton(e)) {
                                               Point p = e.getPoint();
                                               int rowNumber = tabla.rowAtPoint( p );
                                               ListSelectionModel modelo = tabla.getSelectionModel();
                                               modelo.setSelectionInterval( rowNumber, rowNumber );
                                           }
                                       }
                                   }
                               }
        );

sábado, 21 de agosto de 2010

Dar formato monetario a un valor numérico

Para dar el formato monetario a un valor numérico se debe realizar lo siguiente:
  • double monto = 500000.00;

  • NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.getDefault());

  • System.out.println("El monto a pagar es de: " + nf.format(amount));

Con estas líneas de código se obtendrá una salida como la siguiente:

El monto a pagar es de 500.000,00 €

Si queremos especificar una región geográfica en particular, debemos hacer lo siguiente:
  • Locale locale = new Locale("es","AR"); // elegimos Argentina
  • NumberFormat nf = NumberFormat.getCurrencyInstance(locale);
En este caso la salida quedaría:

El monto a pagar es de $500.000,00

 
Nota: El símbolo monetario depende del lugar que especifiquemos.

domingo, 8 de agosto de 2010

Gif animado en java

Para visualizar un archivo gif animado en un componente JLabel de Swing se debe realizar lo siguiente:

JLabel etiqueta = new JLabel();
ImageIcon imageIcon = new ImageIcon("D:/gif_animado.gif");
etiqueta.setIcon(imageIcon);
imageIcon.setImageObserver(etiqueta);

El método setImageObserver establece el observador de la imagen que es quien se encargará de actualizar la pantalla en caso de que sea un archivo GIF animado.

domingo, 11 de julio de 2010

Cambiar el puntero del mouse

Para cambiar el puntero del mouse se debe utilizar la siguiente línea de código:

Bloque entrecomilladosetCursor(new Cursor(Cursor.W_RESIZE_CURSOR));

Ejemplo:

JTextField campoTexto = new JTextField();

campoTexto.setCursor(new Cursor(TipoCursor));

donde TipoCursor puede ser:

  • DEFAULT_CURSOR
  • CROSSHAIR_CURSOR
  • TEXT_CURSOR
  • WAIT_CURSOR
  • SW_RESIZE_CURSOR
  • SE_RESIZE_CURSOR
  • NW_RESIZE_CURSOR
  • NE_RESIZE_CURSOR
  • N_RESIZE_CURSOR
  • S_RESIZE_CURSOR
  • W_RESIZE_CURSOR
  • E_RESIZE_CURSOR
  • HAND_CURSOR
  • MOVE_CURSOR

miércoles, 16 de junio de 2010

Aplicaciones RIA con Flex y Java

Una integración casi perfecta, una opcion más de desarrollo rápido de aplicaciones RIA, ésta nueva tecnología adobe permite mejorar el frontend de aplicaciones web y de escitorio, reemplazando a Swing, JSF,CSS, etc...Estas aplicaciones solo requieren flash players del lado del cliente para ser ejecutadas.

Su rendimiento a pleno se puede ver en aplicaciones Web, debido a que posee las caracteristicas de Aplicaciones Rich Interface, brindano al usuario la sensacion de estar manipulando un sistema escritorio.

La integración con Frameworks como hibernate, spring proporciona una alternativa potencial y eficiente desde el punto de vista del tiempo de desarrollo. Y por supuesto todo lo que aporta java en si.



Ejemplos:
aqui
aqui

jueves, 8 de octubre de 2009

Qtjambi

Diapositiva acerca de QTJambi

Se puede descargar este archivo desde aquí

QTJambi

Buscando alternativas para crear interfaces gráficas, encontré información acerca de una librería llamada QTJambi.

Características:

  • Es un framework de desarrollo en Java con base en las librerías QT.
  • Es multiplataforma
  • Librerías muy completas para desarrollar aplicaciones clientes o servidor

Pero ¿Qué es QT?

Qt es una librería multiplataforma para desarrollar interfaces gráficas de usuario y también para el desarrollo de programas sin interfaz gráfica como herramientas de la consola y servidores.

Ejemplos de aplicaciones desarrolladas en Qt:

  • KDE
  • Google Earth
  • Skype
  • Adobe Photoshop

Las interfaces (o widgets como se llama en QT) pueden realizarse escribiendo el código a mano o por medio del diseñador que se puede descargar de la página de QT o bien utilizar un plugin para el IDE Eclipse.
En primer lugar se genera un archivo XML con extensión jui que al ser tratado por una aplicación como Eclipse, genera un fichero ".java" que puede ser compilado como una clase normal.

lunes, 24 de noviembre de 2008

Agregar componentes a la paleta de JDeveloper

Se puede ver un video tutorial acerca de como agregar librerías a JDeveloper. Además es posible incorporar componentes de esta librería a la paleta de componentes del IDE JDeveloper.

Ver video: aquí

Cualquier duda o sugerencia pueden escribir al correo ideasjava@gmail.com

domingo, 19 de octubre de 2008

Libreria para manipular puertos serie y paralelo - javacomm

La libreria javacomm permite manipular los puertos serie y paralelo de la pc. Cuenta con los métodos necesarios para seleccionar entre los puertos, configurar parámetros, escribir y leer de los mismos.

En la actualidad sun no da soporte para windows, por lo que la librería no se encuentra disponible para la descarga en la página oficial.

Puedes descargar la versión de javacomm para windows desde aquí

Cualquier duda sobre el uso de esta librería puedes escribir ideasjava@gmail.com

jueves, 24 de julio de 2008

Generar archivo JAR con JDeveloper

En un post anterior se publicó un video para la creación de un JAR con el IDE JDeveloper, este archivo se puede visualizar desde aquí



jueves, 17 de julio de 2008

Donde encontrar libros para descargar

Navegando por la red encontré estas páginas en las cuales se pueden encontrar libros de cualquier tecnología:

itstudy8

BluePortal


Si conocen otras páginas similares las comentan.En caso de que necesiten algún material pueden escribir a la dirección ideasjava@gmail.com y solicitarlo.


Los temas que se publican en este blog surgen a partir del trabajo diario con java; por lo que a medida que surge algun problema y encuentro la solución trato en lo posible de escribir dicha solución en este blog.


En este último tiempo no estuve trabajando con java, razón por la cual no escribo en el blog. Si tienen problemas puntuales con java pueden escribir al correo y si puedo encontrar la respuesta la publico.

lunes, 12 de mayo de 2008

Deshabilitar cambios en el tamaño de las columnas de un JTable

Para no permitir cambiar el tamaño de las columnas de un JTable se debe realizar lo siguiente:

JTable tabla = ...

tabla.getTableHeader().setResizingAllowed(false);

No Mover Columnas de un JTable

Para que no se permitan mover las columnas de un JTable se debe obtener su encabezado y deshabilitarlo de la siguiente manera:

JTable tabla = ...
tabla.getTableHeader().setReorderingAllowed(false) ;

lunes, 5 de mayo de 2008

Convertir un número a base 10

Para convertir un número a base 10 se puede utilizar la siguiente sentencia:

Integer.parseInt(numeroConvertir,base);
donde el parámetro numeroConvertir es un String y base es un int que indica la base en la que se encuentra numeroConvertir. Así, por ejemplo si tenemos el número 101 en base 2, entonces quedaría:
  • numeroConvertir = "101"
  • base = 2

y el resultado sería:

  • int resultado = Integer.parseInt("101",2);

--------> resultado = 5

domingo, 27 de abril de 2008

Cambiar el color de fondo y el de fuente del encabezado de un JTable

Para cambiar el color de fondo(background) y el de fuente(foreground) del encabezado de un componente JTable es necesario definir un TableCellRenderer personalizado. Para esto se debe crear una clase que herede de DefaultTableCellRenderer. En nuestro caso utlizamos la clase MyRenderer.java.

Parte del código de la clase MyRenderer.java

public class MyRenderer extends DefaultTableCellRenderer {
Color background;
Color foreground;
public MyRenderer (Color background,Color foreground) {
super();
this.background = background;
this.foreground = foreground;
}
public Component getTableCellRendererComponent(JTable table, Object value,boolean isSelected, boolean hasFocus, int row, int column) {
Component comp = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
comp.setBackground(background);
comp.setForeground(foreground);
return comp;
}
}

Para hacer uso de esta clase solo es necesario escribir este código en el lugar donde esta el jTable:

jTable.getColumnModel().getColumn(0).setHeaderRenderer(new MyRenderer(Color.orange,Color.orange));

La clase MyRenderer tiene definido un constructor que recibe 2 parámetros Color, los cuales corresponden a los colores de fondo y de fuente.

martes, 26 de febrero de 2008

Java FX

Navengando por la red encontramos esta interesante herramienta que lanzó SUN. Se trata de Java FX, un lenguaje que pretende competir y reemplazar a AJAX y FLASH.

Java FX es una extensión a la plataforma Java por lo que utiliza los runtimes Java ya instalados en el cliente local en lugar de JavaScript. Sólo se requiere de la instalación de una librería adicional con Java SE o ME, dependiendo del dispositivo a utilizar.

Aplicacion de ejemplo que puedes encontrar en el weblog de Chris Oliver

Pueden ver ejemplos de aplicaciones con FX en el sitio de Chris Oliver.

Y puedes obtener Java FX desde aqui

Para comenzar a antender FX puedes consultar este tutorial.

martes, 5 de febrero de 2008

Abrir archivo en Windows desde java

Este método permite abrir el archivo que se pasa por parámetro.
Vale aclarar que este método hace uso de librerias propias de windows para poder detectar automaticamente que programa debe abrir para leer el archivo correspondiente.

public void execute(String mensaje){
try{
File file = new File(mensaje);
p=Runtime.getRuntime().exec
("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file.getAbsolutePath());
}
catch (Exception e){
System.out.println("ERROR AL EJECUTAR APLICACION");
}
}

miércoles, 30 de enero de 2008

Generar archivo ZIP

public void generarZip(){
String[] filenames = new String[]{"D:\\01.java", "D:\\02.java","D:\\03.txt"};
// Crear un bufer para leer los archivos
byte[] buf = new byte[1024];
try {
// Crear el archivo ZIP
String outFilename = "D:\\outfile.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
// Comprimir los archivos
for (int i=0; i FileInputStream in = new FileInputStream(filenames[i]);
// Agregar las entradas ZIP al outputstream.
out.putNextEntry(new ZipEntry(filenames[i]));
// Transferencia de bytes desde el archivo original al archivo ZIP
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
out.closeEntry();
in.close();
}
out.close();
}
catch (IOException e) {

}
}