PDA

Ver la Versión Completa : netbeans y conexion a BD


halizia
23-07-2006, 12:45:53
hola,

estoy haciendo mi proyecto de fin de carrera, y lo estoy haciendo en java, con el netBeans, ya que mi universidad no tiene licencia para usar JBuilder. Ya he usado programas de Borland y la verdad que la conexion a la BD es muy fácil, y quisiera saber si hay extensiones para el netBeans, paletas, componentes... no se si me explico.
Por ejemplo en Borland Delphi, para acceder a la BD sólo hay que poner un DataSource, Table y un DBGrid y ya tienes los datos de la tabla.

Quisiera ver si se puede hacer de algún modo parecido con el netBeans.

Gracias :):)

OSKR
23-07-2006, 19:29:57
Pues, con netbeans lo q debes hacer es agarrar el jdbc (.jar) para la conexion de con el servidor de BD y montarlo igual q montas un directorio, pero en vez de ser Local Directory...será Archive... eso es para q el "supuesto" compilador lo incluya en la ruta q contiene el CLASSPATH y la máqina virtual también....en el código puedes incluir la cabecera en el import, por ejemplo:
import org.firebirdsql.jdbc.*;
xq al abrir el jdbc de FireBird note q la Clase Driver estaba después de esa secuencia de directorios...asi en el código yo puedo hacer esto:

package servidor;
import java.sql.*;
import java.util.Properties;
import org.firebirdsql.jdbc.*;

public class Clase_Conexion
{ FBDriver driver;
FirebirdConnection conexion;
Statement sentencia;
Morrocoy App;
String Error;
String Login;
String Password;
public Clase_Conexion(String Login,String Password,String Convencion)
{ Error="";
this.Login= Login;
this.Password=Password;
driver=new FBDriver();
try
{Properties Prop= new Properties();
Prop.setProperty("user",Login);
Prop.setProperty("password",Password);
//Prop.setDatabase("localhost/3050:C:/BD_DIRECTORIO.FDB");
conexion=(FirebirdConnection)driver.connect(Convencion,Prop);
}
catch(SQLException Ex)
{ Error= "Error intentando establecer la conexión...:"+Ex.getMessage();
driver=null;
return;
}
}

toda la data la recibirás por sentencias de sql o FBSQL según mi caso, y esa data la alojarás en tablas, no esperes q hayan "navegadores" como los del Builder/Delphi o los del VisualStudio....en java puro y nato nunca los he visto...excepto q encontraras el de la Sun q creo q se llama SunOne o paqetes de terceros q son pagos (no se xq por ahí hay qienes dicen "de pago" :confused:)
Ahi te dejo la clase q usé para casi todo lo q tuviera q ver con conexiones a la BD en la tesis, no es paq entiendas de lo q hacía sino como se usa el .jar

package servidor;
import java.sql.*;
import java.util.Properties;
import org.firebirdsql.jdbc.*;

public class Clase_Conexion
{ FBDriver driver;
FirebirdConnection conexion;
Statement sentencia;
Morrocoy App;
String Error;
String Login;
String Password;
public Clase_Conexion(String Login,String Password,String Convencion)
{ Error="";
this.Login= Login;
this.Password=Password;
driver=new FBDriver();
try
{ //FirebirdConnectionProperties Prop= driver.newConnectionProperties();
Properties Prop= new Properties();
Prop.setProperty("user",Login);
Prop.setProperty("password",Password);
//Prop.setDatabase("localhost/3050:C:/BD_DIRECTORIO.FDB");
conexion=(FirebirdConnection)driver.connect(Convencion,Prop);
}
catch(SQLException Ex)
{ Error= "Error intentando establecer la conexión...:"+Ex.getMessage();
driver=null;
return;
}
}
public Clase_Conexion(Morrocoy App)
{ this(App.NomCon[0],App.NomCon[1],App.Valores[App.ConvBD]);
this.App=App;
}
public String GetError()
{ return Error;
}
public boolean Estado()
{ return (Error=="");
}
public FBResultSet Consultar(String Comando)
{ FBResultSet Resultado=null;
try
{ Resultado=(FBResultSet)conexion.prepareStatement(Comando).executeQuery();
}
catch(Exception Ex)
{ Error= "Error intentando hacer una consulta...:"+Ex.getMessage();
return Resultado;
}
Error="";
return Resultado;
}
public FBResultSet Consultar(PreparedStatement PS)
{ FBResultSet Resultado=null;
try
{ Resultado=(FBResultSet)PS.executeQuery();
}
catch(Exception Ex)
{ Error= "Error intentando hacer una consulta...:"+Ex.getMessage();
return Resultado;
}
Error="";
return Resultado;
}
public PreparedStatement PS(String Comando)
{ PreparedStatement ps=null;
try
{ ps=conexion.prepareStatement(Comando);
}
catch(Exception Ex)
{ Error= "Error intentando hacer una consulta...:"+Ex.getMessage();
return ps;
}
Error="";
return ps;
}
public int Actualizar(String Comando)
{ int Filas=0;
try
{ Filas=conexion.prepareStatement(Comando).executeUpdate();
Error="";
}
catch(Exception Ex)
{ Error= "Error intentando hacer una actualización...:"+Ex.getMessage();
}
return Filas;
}
public int Actualizar(PreparedStatement PS)
{ int Filas=0;
try
{ Filas=PS.executeUpdate();
Error="";
}
catch(Exception Ex)
{ Error= "Error intentando hacer una actualización...:"+Ex.getMessage();
}
return Filas;
}
protected void finalize()
{ try
{ sentencia.close();
conexion.close();
driver=null;
}
catch(Exception Ex)
{
}
}
}