br-linux

Artigos br-linux.org
Artigos sobre Linux em bom português, originais e com qualidade

Acessando Firebird/Interbase via JDBC
Publicado em 31 de agosto de 2003

O Alessandro de Oliveira Faria (CABELO) mandou um tutorial que explica de maneira fácil, onde encontrar, como instalar e conectar com banco Firebird/Interbase via JDBC. Vaje abaixo o texto completo:

Acessando Firebird/Interbase via JDBC

Alessandro de Oliveira Faria (CABELO)

Este tutorial explica de maneira fácil, onde encontrar, instalar e conectar com banco Firebird/Interbase via JDBC.

Em primeiro lugar, vou partir da premissa que o firebird/interbase e java esteja instalado e configurado corretamente. Caso contrário, existe em www.vivaolinux.com.br um artigo elaborado pelo Junior que contempla toda a instalação do java 2 SE. Portanto não entrarei em detalhes neste tópico.

Criaremos o diretório jdbc

[root@athlon usr]# cd /usr/java/j2sdk1.4.1_04/jre/
[root@athlon jre]# mkdir jdbc
[root@athlon jdbc]# cdjdbc


Vamos efetuar o download do jdbc que é necessário para o funcionamento do processo de conexão com qualquer bco de dados.
No link abaixo, você encontrará o arquivo JDBC2 (jdbc2_0-stdext.jar). Efetue o download desde arquivo, e o salve na pasta que acabamos de criar.

http://java.sun.com/products/jdbc/download.html

Agora efetue o download do jdbc tipo 4 (conexão direta como banco) do Firebird/Interbase.

http://prdownloads.sourceforge.net/firebird/FirebirdSQL-1.0.0.zip

Descompactando o arquivo:


[root@athlon jdbc]# unzip FirebirdSQL-1.0.0.zip
Archive: FirebirdSQL-1.0.0.zip
inflating: firebirdjmx.jar
inflating: firebirdsql-full.jar
inflating: firebirdsql-test.jar
inflating: firebirdsql.jar
inflating: firebirdsql.rar
creating: lib/
inflating: lib/mini-concurrent.jar
inflating: lib/mini-j2ee.jar
inflating: lib/jaas.jar
inflating: lib/log4j-core.jar
inflating: faq.html
inflating: FAQ.txt
inflating: JDBC20_conformance.html
inflating: release_notes.html
[root@athlon jdbc]#

O conteúdo da pasta jdbc deverá ser semelhante a isto:

[root@athlon jdbc]# ls
FAQ.txt firebirdjmx.jar firebirdsql.rar
FirebirdSQL-1.0.0.zip firebirdsql-full.jar jdbc2_0-stdext.jar
JDBC20_conformance.html firebirdsql-test.jar lib
faq.html firebirdsql.jar release_notes.html
[root@athlon jdbc]#

Agora ao conteudo da pasta lib:

[root@athlon jdbc]# ls lib
jaas.jar log4j-core.jar mini-concurrent.jar mini-j2ee.jar
[root@athlon jdbc]#


Apagaremos o arquivo compactado por não precisar mais dele:

[root@athlon jdbc]#
[root@athlon jdbc]# rm -f FirebirdSQL-1.0.0.zip
[root@athlon jdbc]#

inclua esta linha do arquivo /etc/profile

CLASSPATH=$CLASSPATH:/usr/java/j2sdk1.4.1_04/jre/jdbc/jdbc2_0-stdext.jar:/usr/java/j2sdk1.4.1_04/jre/jdbc/firebirdsql.jar:/usr/java/j2sdk1.4.1_04/jre/jdbc/lib/jaas.jar:/usr/java/j2sdk1.4.1_04/jre/jdbc/lib/log4j-core.jar:/usr/java/j2sdk1.4.1_04/jre/jdbc/lib/mini-concurrent.jar:/usr/java/j2sdk1.4.1_04/jre/jdbc/lib/mini-j2ee.jar

Segue abaixo um exemplo de conexão com o Bco em Java:


----------| exemplo de java com interbase |---------
import java.sql.*;

public class Bco
{
public static void main(String args[])
{
System.out.println("#testando acesso a banco de dado Interbase\n\n");
Connection conn = null;
String teste = "SELECT NOME FROM TAB_CLI_001;";
try
{
Class.forName("org.firebirdsql.jdbc.FBDriver");
conn = DriverManager.getConnection("jdbc:firebirdsql:ip_do_servidor/3050:/caminho_do_bco_de_dados.gdb", "SYSDBA", "masterkey");
System.out.println("Sucesso na conexão! Massacre!\n");
Statement stm = conn.createStatement();
ResultSet rs = stm.executeQuery(teste);
while (rs.next())
{
String linha = rs.getString("NOME");
System.out.println("Cliente:" +linha);
}

System.out.println("select realizado\n");
}
catch(ClassNotFoundException e)
{
System.out.println("excessao ClassNotFound...");
e.printStackTrace();
}
catch(SQLException e)
{
System.out.println("SQL Exception... Erro dos Bravos");
e.printStackTrace();
}
finally
{
try
{
conn.close();
}
catch(SQLException onConClose)
{
System.out.println("error on closing");
onConClose.printStackTrace();
}
}
}
}

--------| fim do exemplo |-------

Compilando o programa

[root@athlon java]# javac Bco.java

Executando o programa

[root@athlon java]# java Bco


Postado por brain em agosto 31, 2003 11:56 PM

Comentários para "Acessando Firebird/Interbase via JDBC"

» Postado por: Djow em setembro 20, 2003 06:28 PM, 200.232.185:

    Estou rodando esse exemplo eel está dando erro :

    Exception in thread "main" java.lang.NoClassDefFoundError: AcessoJDBCFirebird (w
    rong name: teste/AcessoJDBCFirebird)
    at java.lang.ClassLoader.defineClass0(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12
    3)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:250)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:54)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:193)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:186)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:299)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:265)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:255)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)

    sendo q já fiz download dos drivers, já coloquei no classpath e tudo... só q ele não acha o org.firebird.jdbc.FBDriver ..... se alguém puder me ajudar valew....

    Abraço...

 

» Postado por: Sergio em outubro 2, 2003 10:59 PM, 200.103.152:

    sou praticamente um leigo no sistema Linux, e estou enfrentando alguns problemas para configuração da minha placa de rede no computador, eu possuo uma RealTek 8201 soh q nao consigo achar o módulo Kernel em lugar algum, onde consigo achar esse módulo?!?!
    grato

 

» Postado por: Marconi Barbosa em outubro 3, 2003 01:58 AM, 200.102.232:

    Gostaria de saber mais sobre o linux, estou começando a me interessar pelo linux, mas realmente preciso de algo mais para que eu consiga entender o linux, desde de já agradeço pela força.

 

» Postado por: Marconi Barbosa em outubro 3, 2003 01:58 AM, 200.102.232:

    Gostaria de saber mais sobre o linux, estou começando a me interessar pelo linux, mas realmente preciso de algo mais para que eu consiga entender o linux, desde de já agradeço pela força.

 

» Postado por: pedro em outubro 16, 2003 11:13 AM, 200.150.39.:

    montei um servidor linux, instalei o interbase mas nos consigo startar, sera que existe um livro ou manual onde eu possa encontar tais informações ? ou será que vocês podem me instruir ?
    muito obrigao.

 

» Postado por: Barrett Bill em dezembro 10, 2003 09:46 PM, 62.213.67.1:

    Gratitude is merely the secret hope of further favors.

 

» Postado por: Wilson Sari em dezembro 21, 2003 01:20 AM, 62.213.67.1:

    Study as though you will not reach, as if you may lose it.

 

» Postado por: Ledbetter Bill em janeiro 9, 2004 07:53 PM, 68.173.7.11:

    Any certainty is a delusion.

 

» Postado por: Rene Schneider em junho 21, 2004 09:52 AM, 200.201.128:

 

» Postado por: Anderson Christopher em setembro 30, 2004 07:11 PM, 195.94.1.20:

    Fashion exists for women with no taste, etiquette for people with no breeding.

 

Antes de comentar...

- Preserve a qualidade desta discussão
- Leia os Termos de Uso.
- Este formulário deve ser usado para comentários sobre a notícia. Se você tem dúvidas ou precisa de ajuda, use o Fórum.
- Mantenha o foco nos argumentos e no assunto
- Não faça ataques pessoais.
- Pense 5 vezes antes de entrar em discussões inúteis, como "qual é a melhor distribuição/ambiente gráfico/linguagem de programação/etc.", mesmo se alguém já tiver provocado - um erro não justifica o outro
- Não seja um e-mala ;-)

Envie seu comentário









Lembrar as informações pessoais?


Atenção: Este formulário deve ser usado para comentários sobre a notícia. Se você tem dúvidas ou precisa de ajuda, use o Fórum, onde mais pessoas estarão disponíveis para respondê-lo..






Nota: os comentários pertencem a seus respectivos autores e são de responsabilidade de quem os postou. O restante desta nota está disponível sob a licença GNU FDL, exceto se explicitamente declarado em contrário.