Netbeans + JavaEE + Mysql + Conector

Para hacer más sencillo el aprendizaje, estaremos desde ahora trabajando con BdD reales, además de estar un paso más cerca de realizar el blog.
 
Modifiqué la clase conector, para qeu pudiera trabajar con conexiones a BdDatos externas, además de explicarles un poco como crearan las tablas que usaran con netbeans.
Les recomiendo utilizar la versión 6.8 de netbeans que pueden encontrar en la página, la versión que incluye los servidores de tomcat o glassfish. 

Read More >Netbeans + JavaEE + Mysql + Conector

[ BdD ] [ JAVA ] Conexión BdD con Java a través de NetBeans

Ahora nos toca empezar a usar Java para aplicar lo que hemos aprendido de BdD. Para hacerlo se adjunta un proyecto TIPO en NetBeans, que incluye el Conector a la Base de Datos, además de unos ejemplo de como utilizarla.

Hoy partimos con el proyecto de realizar un Blog propio, por lo cual debemos diseñar la Base de Datos, y generar los insert, select, etc, que sean correspondientes.

En primera instancia, manejaremos de manera “Virtual” nuestro proyecto, hasta que hagamos una pequeña introducción a  páginas web.

Read More >[ BdD ] [ JAVA ] Conexión BdD con Java a través de NetBeans

[JAVA] Excepciones

La clase pasada comentamos a grandes rasgos que era una excepción en Java. La definimos como un EVENTO que no se desea que ocurra, y cuando este ocurre nos interesa manejar el flujo del programa.

En general no tomamos en cuenta los errores y en algunos casos puede llegar ha ser crítico. Si tomamos como ejemplo la función recursiva para calcular el factorial de un número que realizamos la clase pasada, y le hubiéramos ingresado un número negativo como parámetro, esta hubiera estado funcionando por siempre, debido a que nunca comprobamos que se ingresaran solo números positivos. 

En general, muchos de los problemas que puedan pasar nos lo advierte Java en el momento de compilación y nos pide arreglarlo, con un try / catch o con un throws.

Cuando le agregamos throws a nuestro método, le especificamos que no queremos que los errores que puedan ocurrir sean manejados por él. Por el contrario, el método, clase un objeto que instancia este método tendrá que hacerse cargo de él (Ya daremos ejemplos.) 

En cambio cuando usamos el “statement” try/catch estamos manejando el flujo del error al momento de que este pudiera ocurrir.

Antes de seguir es bueno tener en cuenta ciertas cosas:

 

  • El try es en donde el error puede ocurrir.
  • Pueden existir tantos catch, como tipo de errores quiera yo manejar.
  • Los catch pueden ser MUY genéricos o MUY específicos, dependiendo de la necesidad.
  • En Java ….. Una excepción es un Objeto .
 
Lo bueno de que las excepciones sean objetos es que podemos adquirir tanta información de ellas como sea necesaria. 
 
A continuación un ejemplo en el cual para un mismo problema, capturamos el error usando try y catch además de usar también throws. 

Read More >[JAVA] Excepciones

Herencia en Java

Primero que todo, es necesario tener una idea de como se comportan la orientación a objetos, si no lo recuerdan por favor revisar eso antes de continuar.

¿Que es la herencia?

La herencia es una característica de algunos lenguajes de programación orientados a objetos, que permite crear objetos a base de otros ya existentes. Como ya hemos comentado en clases, la Orientación a objetos permite la reutilización de código.

Llamaremos superclase, a la clase de la cual heredamos, y en el caso de Java, solo podremos heredar de una sola clase.

La clase de la cual heredamos, nos aporta todas las funciones y métodos que esta posee, dejando así más fácil su implementación.

 

Cosas que hay que tener en cuenta:

  • Si no especificamos un constructor, se intentara usar un constructor de la clase padre.
  • Es posible especificar el uso del constructor de la superclase, llamándolo directamente con “super();” .
  • Yo puedo redefinir los métodos de la superclase, simplemente escribiéndolos de nuevo.
  • Modificar un método, para que me devuelva valores distintos, o tipos de variables distintos, puede generar problemas en el polimorfismo.((Tarea)
  • No se puede heredar de mas de una clase. Para eso existen las interfaces*.

 

A modo de ejemplo podemos tener las siguientes clases:

 

La Clase Persona :

 

public class Persona {

String rut;
String nombre;

boolean cabello;
String colorCabello;

Persona()
{

}

Persona(String nombre)
{
this.nombre = nombre;
}

public String getNombre()
{
return this.nombre;
}

public void setNombre(String nombre)
{
this.nombre = nombre;
}

}

 

La clase alumno

 

public class Alumno  extends Persona{

String apellido;
/** Creates a new instance of Alumno */
public Alumno() {
super();
}

public Alumno(String nombre)
{
super(nombre);
}
void setApellido(String apellido)
{
this.apellido = apellido;
}

public String getNombre()
{
return this.nombre+" "+this.apellido;
}

public static void main (String args[])
{
Alumno alumno = new Alumno();
alumno.setNombre("Naito");
alumno.setApellido("Neko");
Alumno alumnoDos = new Alumno("Pepe");
alumnoDos.setApellido("Grillo");

System.out.println("Alumno 1 ->t"+alumno.getNombre());
System.out.println("Alumno 2 ->t"+alumnoDos.getNombre());
}

 

¿Como heredo?

 

Como podemos notar en los ejemplos anteriores, para que una clase herede de otra, simplemente usaremos “extends” luego de la definición del nombre de la clase, seguida por el nombre de la clase de la cual queremos heredar.

 

En este caso lo que tenemos se puede observar en el siguiente esquema :

 

 

 

 

En este caso la herencia es bastante obvia, y lo que estamos haciendo, es crear una clase Alumno,que posee las características y métodos de la clase persona.

 

 

Para la próxima clase.

Para la próxima clase, deben de hacer una investigación sobre el polimorfismo en Java, traer un ejemplo programado y explicarlo en frente de la clase. Los ejemplos deben de ser avisados a mas tardar el día miércoles 10, y estos temas de ejemplos no se pueden repetir!!!!. La prioridad es por orden de llegada, o sea el primero que elija un tema para el ejemplo es el que se lo queda.

 

Read More >Herencia en Java