Microsoft Access en Java (2)

Conectar con una base de datos de Microsoft Access por medio del puente JDBC-ODBC configurando el origen de los datos en el panel de control ODBC de 32 bits mostrando los registros obtenidos desde consultas SQL con Java 7

Requisitos previos

El puente JDBC-ODBC ha dejado de estar disponible en Java 8 por lo que para poder utilizarlo hay que tener Java 7 o versión anterior. Aunque se trata de un método obsoleto y poco eficiente de acceder a bases de datos de Microsoft Access desde Java, todavía hay usuarios que lo utilizan y que no desean migrar sus programas a controladores propios del lenguaje, libres (ucanaccess, jackcess…) o comerciales.

En Windows 10 están disponibles en las herramientas administrativas los paneles de control ODBC. Hay 2 versiones, para 32 y para 64 bits. Microsoft Access usa un controlador de 32 bits por lo que se necesita instalar Java 7 para 32 bits y abrir el panel ODBC de 32 bits, sin estos 2 requisitos falla el acceso a las bases de datos (BD) desde Java por este método. El panel ODBC se puede encontrar en las herramientas administrativas o tecleando en el menú Inicio > Buscar “Orígenes de datos…” que muestra las 2 opciones:

  • Orígenes de datos ODBC (32 bits)
  • Orígenes de datos ODBC (64 bits).
Continuar leyendo “Microsoft Access en Java (2)”

JTextArea multilínea en Java

JTextArea en Java para campos de texto con varias líneas en contraposición a JTextField que sólo admite 1 línea; añadir líneas desde JTextField a JTextArea y vaciar el campo de texto

JTextField es un componente que muestra una sola línea de texto, en cambio JTextArea muestra múltiples líneas de texto. Ambos componentes muestran todo el texto en el mismo formato (fuente, color…), sin embargo, es factible modificar esos parámetros en lugar de los que Java implementa por defecto.

Para crear un objeto JTextArea se pueden emplear varios constructores:

TextArea texto = new JTextArea(); //sin parametros
JTextArea texto = new JTextArea(10,40); //numero de filas y columnas
JTextArea texto = new JTextArea( "Texto dentro de JTextArea" ); //cadena de texto
Continuar leyendo “JTextArea multilínea en Java”