Home | Java |C # |SQL |Manuales |Videos |


10

Colocar un Jar en la Paleta de NetBeans

imageMuchas veces desarrollamos archivos JAR que queremos tenerlos siempre a la mano ( mas si son visuales ) , una alternativa para tener los Jar a la mano es agregarlo en la Paleta de NetBeans.

En esta entrada colocaremos una librería (JCalendar) en la paleta de NetBeans con el fin de arrastrar sus objetos a nuestros JFrame ; para este ejemplo voy a usar la librería JCalendar que lo pueden descargar de esta página : http://www.toedter.com/en/jcalendar/index.html  (el proyecto es libre) .

  1. En la paleta de componentes(beans) hacemos clic derecho y en el menú emergente seleccionamos Palette Manager : image
  2. Hacemos clic en New Category , y en la ventana emergente colocaremos el nombre de la categoría que deseamos que aparezca en la paleta ( Observen que si se desmarca los checks la categoría que seleccionen desaparece de la paleta).image
  3. Ahora vamos a agregar el Jar a la paleta , para ello vamos a “Add from JAR”  y buscamos el directorio del JAR a agregar , seleccionamos y damos clic a Next : image
  4. En la siguiente ventana seleccionamos los componentes a agregar :image
  5. Seleccionamos la categoría que habíamos creado, clic en Finish y cerramos la ventana  :image
  6. Y listo ya tenemos el Jar en nuestra paleta con los componentes que podemos arrastrar a los frame o paneles : image
... Leer más ...
21

Obtener el código fuente a partir del JAR

120px-Nuvola_mimetypes_java_jarBueno muchas veces que encontramos proyectos para poder estudiarlos el autor solo nos proporciona el archivo jar mas no el código fuente. Aquí encontré una forma fácil de tener el código fuente , OJO que esto solo debe usarse para fines de comprensión del código (es bueno ver la forma de como programan las demás personas) .

Antes que nada debemos tener instalado el winrar , vamos al archivo jar → clic derecho y lo descomprimimos . image

Una vez que hemos descomprimido el archivo JAR encontraremos en la carpeta los archivos con la extensión .class los cuales son los que nos vana  a interesar :image

Ahora nos descargamos la herramienta portable DJ.Java.Decompiler.v3.11.11.95 que lo pueden descargar desde aquí .image

Ejecutamos el archivo DJ.exe , nos saldrá la siguiente pantalla …. nos vamos a File → Open y buscamos los archivos .class :image

Y a continuación tendremos el código fuente de nuestro archivo JAR

image

... Leer más ...
62

Ventana splash con NetBeans

image Una ventana splash es una ventana de presentación ; sin los botones clásicos y que va a servir para darle una mejor presentación a nuestro proyecto.

Esta ventana se debe colocar al principio de nuestra aplicación; para empezar debemos diseñar la que será nuestra imagen de presentación la cual por motivos de tiempo elegí la de NetBeans ; y a esta le vamos a agregar una barra de progreso :

  1. Abrimos el NetBeans y creamos un nuevo proyecto , el cual lo desmarcamos para que no cree la clase main :image
  2. Creamos el folder en donde irá nuestra imagen; para ello clic derecho en Source Package → New → Other por lo que saldrá una ventana en la cual debemos elegir  Other → Folder   y finalmente le damos el nombre que queramos :imageimage
  3. Ahora creamos un paquete Splash en el cual vamos a agregar un JFrame y también creamos una clase para el hilo que vamos a usar , por lo que les debe quedar así :  image
  4. Vamos a trabajar en nuestro Frame, al cual le hacemos clic derecho → SetLayout y le damos BorderLayout hecho esto colocamos dos paneles : uno en el sur y otro en el centro (seguir el orden para no tener complicaciones). Después de haber agregado los paneles a cada uno le vamos a dar BorderLayout al igual que al frame. Hecho esto vamos a colocar en el panel del sur un JProgressBar al que le vamos a llamar progreso y en el panel central una etiqueta; nos debe quedar así :image
  5. Para cambiar el nombre del JProgresBar podemos darle clic derecho a la barra y elegimos “Change Variable name” a continuación nos saldrá la siguiente ventana en la cual debemos colocar el nombre de la barra :image
  6. En el panel central vamos a colocar una etiqueta al cual le vamos  a colocar una imagen, ver esta entrada para ver como ccolocar una imagen : image
  7. En el diseñador del JFrame nos vamos a agregar código , para ello hacemos clic en en boton source image ;  y ya en la clase del JFrame (al cual llame Principal) le agregamos un objeto Hilo :
    import java.awt.Color;

    public class Principal extends javax.swing.JFrame
    {
    HiloProgreso hilo;



  8. Vamos a el constructor y le agregamos el siguiente código :
        public Principal()
    {
    //Método por defecto
    initComponents();
    iniciarSplash();
    //Creamos un objeto HiloProgreso al cual
    //le pasamos por parámetro la barra de progreso
    hilo=new HiloProgreso(progreso);
    //Iniciamos el Hilo
    hilo.start();
    //Le damos tamaño y posición a nuestro Frame
    this.setLocation(200,200);
    this.setSize(472,249);
    //Liberamos recursos
    hilo=null;
    }



  9. Creamos un método get para nuestro JProgressBar , para ello o bien lo agregamos directamente o bien hacemos que el NetBeans lo genere , para ello clic derecho sobre el atributo → seleccionamos Refactor → Seleccionamos Encapsule Fields  y en la ventana que aparece simplemente seleccionamos los métodos set y get que deseamos que NetBeans genere imageimage


  10. Hecho esto aparecerá la siguiente línea de código :
        public javax.swing.JProgressBar getjProgressBar1() {
    return progreso;
    }



  11. Ahora si podemos crera nuestro método iniciar Splash :
        public void iniciarSplash() {
    this.getjProgressBar1().setBorderPainted(true);
    this.getjProgressBar1().setForeground(new Color(50, 50, 153, 100));
    this.getjProgressBar1().setStringPainted(true);
    }



  12. NetBeans nos debe estar marcando un error , esto se da porque aún no hemos creado nuestra clase HiloProgreso ; para ello clic en el paquete Splash → New → Java Class y a la clase le damos de nombre HiloProgreso y la vamos hacer que extienda de Thread ; en esta clase debemos crear una referencia a la barra de progreso que vamos a pasar por parámetros para lo cual declaramos un JProgressBar progreso :
    package Splash;

    import javax.swing.JProgressBar;

    public class HiloProgreso extends Thread
    {
    JProgressBar progreso;



  13. Ahora vamos a crear nuestro método constructor el cual va a tener como parámetros una barra de progreso1 , se debe observar como se da la relación de asociación ; es decir la referencia del objeto que pasó por parámetro la asigno a la referencia que cree anteriormente y con esto puedo usar todos sus métodos (el super es para llamar al método constructor de la clase Thread y por ley debe ser la primera línea en el método constructor de la clase hija) :
    public class HiloProgreso extends Thread
    {
    JProgressBar progreso;

    public HiloProgreso(JProgressBar progreso1)
    {
    super();
    this.progreso=progreso1;
    }



  14. Hecho esto vamos a crear el método run que va a servir para correr el hilo :
        public void run()
    {
    for(int i=1;i<=100;i++)
    {
    progreso.setValue(i);
    pausa(100);
    }
    }



  15. Y por último creamos nuestro método pausa , que como el nombre indica nos va a dar una pausa para que la barra de progreso no llegue al 100% n bien corramos la aplicación :
        public void pausa(int mlSeg)
    {
    try
    {
    // pausa para el splash
    Thread.sleep(mlSeg);
    }catch(Exception e){}
    }



  16. Hecho esto presionamos F6 y veremos algo como esto :image


  17. El ejemplo lo pueden descargar desde aquí :





btn_6



 



 



* Si el link de descarga no funciona, por favor ir a la sección de carpeta compartida que se encuentra a la derecha , esta les enviará directamente a mi carpeta compartida → en la carpeta compartida ir a Ejemplos → Ejemplos de Java  → Cap_18_NetBeans → Splash.



* Respecto a llamar una aplicación despues de terminado el splash les pediría tiempo para modificar la aplicación y que haga eso ( a mas tardar mañana lo estoy modificando)

... Leer más ...
44

Conectando SQL Server y Netbeans con JDBC – Parte 2

DibujoBuenos días antes que nada quiero pedir disculpas por demorarme en publicar este post …tuve algunos problemas con la PC pero bueno ya todo se arreglo y vamos a ver la segunda parte de la conexión entre SQL Server y NetBeans.Para poder llevar a cabo la conexión de nuestra base de datos con nuestra aplicación en Java es necesario que previamente hagamos algunos ajustes al SQL Server 2005 ; los ajustes que se deben hacer se encuentran en esta entrada (Si ya revisaron este post sería bueno que lo revisen nuevamente pues se ha hecho algunos ajustes).
Hecho esto el siguiente paso es configurar nuestro NetBeans para terminar con la conexión a la base de datos :
I.- REQUISITOS
  • Haber configurado el Microsoft SQL Server 2005 ; sino lo hiciste visita esta entrada :
  • NetBeans IDE
  • Conector de SQL Server para Java , que se puede descargar de aquí .
  • Una aplicación en Java, sino la tienes aquí crearemos una sencilla.
  • La base de datos Pubs, si no la haz agregado a tu base de datos , lo puedes hacer de esta forma.
II.- CREACIÓN DEL PROYECTO
  • Abrimos el NetBeans y creamos nuestro proyecto en el cual vamos a colocar un JPanel (PanelPrincipal) y un JFrame (Principal) ; vamos al PanelPrincipal al cual le damos el Border Layout  ; en el NORTE colocaremos un botón y en el CENTRO un Text Area :
numcommentsVE
OBSERVACIÓN :Antes de colocar un Txt Area es recomendable colocar un JScrollPane para poder visualizar el contenido que supera los limites del textArea

image   image 

  • Ahora nos vamos al JFrame llamado Principal en el cual agregaremos el Panel que hemos creado previamente:
        public Principal()
    {
    initComponents();
    add(new PanelPrincipal());
    setSize(500,400);
    }








III.- AGREGANDO EL JAR AL PROYECTO



  • Descomprimimos el conector que habíamos descargado previamente .image


  • Y encontraremos las siguientes carpetas :image


  • Agregamos las librerías sqljdbc y sqljdbc4 a nuestro proyecto ; para ello clic derecho el Libraries → Add JAR image    image







IV.- ESTABLECIENDO LA CONEXIÓN



  • Nos vamos al panel de nombre Panel Pricipal y importamos las siguientes librerías :
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.logging.Level;
    import java.util.logging.Logger;



  • Vamos a el diseño del gráfico y le damos doble clic en el boton Consultar  para programar su acción y le agregamos el siguiente código:
    private void btnConsultaActionPerformed(java.awt.event.ActionEvent evt) {                                            
    String connectionUrl = "jdbc:sqlserver://localhost:1433;" +
    "databaseName=pubs;user=sa; password=adminadmin;";
    // Declaramos los sioguientes objetos
    Connection con = null;
    Statement stmt = null;
    ResultSet rs = null;
    try {
    //Establecemos la conexión
    Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    con = DriverManager.getConnection(connectionUrl);
    // Create and execute an SQL statement that returns some data.
    String SQL = "SELECT * FROM AUTHORS";
    stmt = con.createStatement();
    rs = stmt.executeQuery(SQL);
    this.muestraData(rs);
    }
    catch (Exception e)
    {
    e.printStackTrace();
    }
    finally {
    if (rs != null) try { rs.close(); } catch(Exception e) {}
    if (stmt != null) try { stmt.close(); } catch(Exception e) {}
    if (con != null) try { con.close(); } catch(Exception e) {}
    }

    }



  • Finalmente vamos a crear nuestro método muestraData
    public void muestraData(ResultSet r) throws Exception
    {
    ResultSetMetaData rmeta= r.getMetaData();
    int numColumnas= rmeta.getColumnCount();//Cuántas columnas
    txtSalida.setText("");
    for(int i=1; i<=numColumnas; ++i)
    //obtiene nombre de columna
    txtSalida.append(rmeta.getColumnName(i) + "\t");
    txtSalida.append("\n");
    while(r.next())
    { // hasta fin de archivo
    for(int i=1;i<=numColumnas;++i)
    {
    txtSalida.append(r.getString(i) + "\t");
    }
    txtSalida.append("\n");
    }
    }



  • Hecho esto ejecutamos el proyecto y nos deberá salir lo siguiente :image


  • El ejemplo lo pueden descargar aquí : btn_6



 



 







V.- ERRORES



  • Hay que actualizar el SQL Server 2005 al service Pack 3 para que esto pueda funcionar.

... Leer más ...
45

Conectando SQL Server y Netbeans con JDBC – Parte 1

Dibujo En este primer tutorial se tratará de mostrar los ajustes que se deben realizar en  sql server 2005 para poder conectarlo al netbeans , para lo cual necesitaremos algunas herramientas y la base de datos pubs que previamente la descargamos y adjuntamos en nuestro SQL; sino se tiene la base de datos pubs puedes mirar este post  o puedes usar cualquier base de datos que tengas.

I.- REQUISITOS
  • Microsoft SQL Server 2005.
  • Microsoft SQL Server JDBC Driver ; si no lo tienes lo puedes descargar aquí.
  • NetBeans IDE
II.- OBSERVACIONES
  • Por defecto el SQL Server 2005 no permite conexiones remotas y tiene deshabilitado la cuenta sa ; así que si tratamos de conectarnos nos mostrará el siguiente mensaje de error :
  • Otro problema que se nos puede presentar cuando deseemos conectarnos es que las conexiones TCP/IP estén deshabilitadas , para lo cual al tratar de conectarnos nos mostrará la siguiente excepción  :

    Network error IOException: Connection refused: connec

III.- CONFIGURANDO EL SQL SERVER PASO A PASO
  1. HABILITAR TCP/IP :
    • Vamos al menú inicio → Todos los programas → Microsoft SQL Server 2005 → Herramientas de configuración → SQL Server Configuration Manager : image
    • En el parte izquierda de la ventana del SQL Server Configuration Manager vamos a expandir la opción de Configuración de red de SQL Server 2005 y click en Protocolos de SQLEXPRESS y le damos clic derecho en TCP/IP y elegimos la opción de habilitar (al hacer esto saldrá una advertencia que indica que los cambios no surtirán efecto hasta que se reinicie el servicio) :image
    • Ahora iremos a las propiedades de TCP/IP y nos dirigimos a la pestaña de Direcciones IP → IPALL y cambiamos el valor de puertos dinámicos por el valor de 1433 (este valor es necesario cuando intentemos conectarnos con el netbeans) ; nuevamente al aceptar nos saldrá la advertencia de reiniciar para que los cambios tengan efecto  : image
    • Ahora vamos a reiniciar el servicio ; para ello nos vamos al panel izquierdo → clic en la opción Servicios de SQL Server 2005 → y nos vamos al panel derecho en SQLEXPRESS y le damos reiniciar :  imageimageimage
  2. HABILITANDO EL MODO DUAL DE CONEXIÓN :  AUTENTICACIÓN DE SQL SERVER Y AUTENTICCIÓN DE WINDOWS
    • Iniciar sesión del SQL Server Management Studio 2005 en modo de autenticación de Windows : image
    • En el explorador , hacer clic derecho en el nombre de instancia y seleccionar propiedades.image
    • Seleccionamos la opción de Seguridad y cambiamos el modo de autenticación de Windows al Modo de autenticación de Windows y SQL Serverimage
    • A continuación nos saldrá una advertencia en la cual se nos indica que los cambios surtirán efecto cuando s reinicie SQL Server (esto lo haremos mas adelante).image
    • Nos vamos a la instancia y reiniciamos : image
  3. HABILITAR LA CONEXIÓN REMOTA EN LA CONFIGURACIÓN DE SUPERFICIE :
    • Abrir la Configuración se superficie de SQL Server 2005 image
    • Seleccionar la configuración de superficie para servicios y conexiones :image
    • Expandimos la instancia de SQLEXPRESS → Motor de base de datos → Conexiones remotas y seleccionamos (en el lado derecho) : Conexiones locales y remotas → Usar TCP/IP y canalización con nombre : image 
    • En la pestaña se Servicios; cambiamos el tipo de inicio por Automático  y le damos en aceptar (nuevamente nos saldrá una advertencia la cual indica que se tiene que reiniciar el servicio) :image
    • Iniciar sesión del SQL Server Management Studio 2005 en modo de autenticación de Windows.
    • En el panel derecho, vamos a Seguridad → Inicio de sesión y buscamos el usuario sa clic derecho → propiedades : image
    • En las propiedades ingresamos una contraseña para este usuario y en la pestaña de estado le damos los permisos de conexión a la base de datos y el inicio de sesión : imageimage 
    • Ahora solo nos queda reiniciar el servicio para que los cambios se efectúen :image

 

duke OBSERVACIÓN : Si al tratar de reiniciar el Servicio de SQL Server ocurre un error es porque se debe ingresar en modo de administrador;para ello damos clic derecho en el icono de SQL server → Ejecutar como administrador .

 

image

Pues bien hasta aquí ya le hemos dado permisos al usuario “sa” para que puede hacer conexión remota usando el dual boot es decir el doble inicio de sesión :

image

image

... Leer más ...