Mysql+java+Win2kserver

7 respostas
S

Alguém aqui no forum sabe configurar o mysql com java e win2k? Já consegui uma vez mas tive que formatar a máquina e não concigo mais configurar. Se puderem me ajudar eu agradeço! :smiley:

7 Respostas

om1

Que problema, exatamente, vc está tendo?

Até onde eu sei, não têm segredo nenhum.

dgouvea

Você precisa fazer as configurações básicas:

1. Criar variaveis de ambiente.
2. Baixar o JDBC especifico do MySQL.
3. Adicionar o JAR referente ao JDBC a variavel de ambiente CLASSPATH.

[list]

JAVA_HOME={Path onde está instalada a JVM}

CLASSPATH=.;{Path onde está salvo o arquivo .jar do JDBC}

[/list]

Não esquece de startar o serviço do MySQL antes de usar.

acho que só isso já basta pra usar MySQL no Java.

S

Executei os passos indicados e Não conecta mesmo assim.
O erro é esse:

at java.lang.ClassLoader.defineClass0(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:12

 at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
 at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
 at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
 at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)

O código é esse:

/*
 * Class.java
 *
 * Created on 20 de Outubro de 2003, 15:45
 */

package conecta;

/**
 *
 * @author  Leandro
 */
import java.sql.*;

public class DataBase {
  //private String clausula = "where regiao = 'centro'";
  private static String codigo = null, nome = null, regiao =  "leste",
      sensor1 = null, sensor2 = null, sensor3 = null, sensor4 = null;

  /** Creates a new instance of Class */
  //public void Acesso(/*String regiao, int cod*/) {
  public static void main(String args[]) {

    //if (regiao != null){clausula = "where regiao = '"+regiao+"'";}
    //else {clausula = "where cod = "+cod;}

    try {
      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")/*/.newInstance()*/;
      String usuario = "root", password = "";
      Connection con = DriverManager.getConnection(
          "jdbc:mysql://192.168.1.14:3306/dbjsp", usuario, password);
      Statement consulta = con.createStatement();
      String SQL = "Select codigo, nome, regiao, sensor1, sersor2, sensor3, sensor4 from clientes where regiao = 'centro'";
      ResultSet resultado = consulta.executeQuery(SQL);

      while (resultado.next()) {
        codigo = resultado.getString("codigo");
        nome = resultado.getString("nome");
        regiao = resultado.getString("regiao");
        sensor1 = resultado.getString("sensor1");
        sensor2 = resultado.getString("sensor2");
        sensor3 = resultado.getString("sensor3");
        sensor4 = resultado.getString("sensor4");
      }
      System.out.println(codigo);
    }
    catch (SQLException e) {
      e.printStackTrace();
    }
    catch (ClassNotFoundException ex) {
      ex.printStackTrace();
    }
  }

  /* public String Codig(){
       String cod = this.codigo;
       return cod;
   }
   public String Nome(){
       String name = this.nome;
       return name;
   }
    public String Regiao(){
       String regi = this.regiao;
       return regi;
   }
     public String Sensor1(){
       String sens1 = this.sensor1;
       return sens1;
   }
     public String Sensor2(){
       String sens2 = this.sensor2;
       return sens2;
   }
     public String Sensor3(){
       String sens3 = this.sensor3;
       return sens3;
   }
     public String Sensor4(){
       String sens4 = this.sensor4;
       return sens4;
   }*/

}

Desde já agreceço! :smiley:

caiofilipini

Você tá usando o driver JDBC padrão, mas tentando conectar com a URL do MySQL. Baixe o driver JDBC do MySQL aqui, e instancie o driver com a seguinte classe:

Class.forName("com.mysql.jdbc.Driver");

[]'s

S

Tentei instalá-lo mas tá dando erro quando faço consultas em uma applet.
O erro é:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

	

Caused by: java.io.FileNotFoundException: C:	ccservidorwebsitecommysqljdbcDriver.class (O sistema não pode encontrar o caminho especificado)

java.lang.NullPointerException: string is null

	java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

	

java.lang.NullPointerException: string is null

	java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

	

java.lang.NullPointerException: string is null

	java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

	
java.lang.NullPointerException: string is null
java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

No classpath o link pro driver do mysql está assim:

.;.;D:ARQUIV~1JMF21~1.1Elibsound.jar;D:ARQUIV~1JMF21~1.1Elibjmf.jar;D:ARQUIV~1JMF21~1.1Elib;.;.;D:ARQUIV~1JMF21~1.1libsound.jar;D:ARQUIV~1JMF21~1.1libjmf.jar;D:javajrelibext;

Meu código está assim:

import java.awt.*;
import java.applet.*;
import java.sql.*;

public class Centro extends java.applet.Applet {
   Image img;
   String sensor1;

   public String Consulta(){
      String codigo = null, nome = null, regiao = null,
             sensor1 = null, sensor2 = null, sensor3 = null, sensor4 = null;
      String usuario = "root", password = "";

      try{
         Class.forName("com.mysql.jdbc.Driver").newInstance();
         Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbjsp",usuario,password);
         Statement consulta = con.createStatement();
         String SQL = "Select codigo, nome, regiao, sensor1, sersor2, sensor3, sensor4 from clientes where regiao = 'centro'";
         ResultSet resultado = consulta.executeQuery(SQL);
         while(resultado.next()){
            codigo = resultado.getString("codigo");
            nome = resultado.getString("nome");
            regiao = resultado.getString("regiao");
            sensor1 = resultado.getString("sensor1");
            sensor2 = resultado.getString("sensor2");
            sensor3 = resultado.getString("sensor3");
            sensor4 = resultado.getString("sensor4");
         }
      }
      catch(SQLException e) {e.printStackTrace(); }
      catch(ClassNotFoundException ex) {ex.printStackTrace();}
      catch(InstantiationException ie) {ie.printStackTrace();}
      catch(IllegalAccessException ia) {ia.printStackTrace();}
      return sensor1;
   }
   /** Initialization method that will be called after the applet is loaded
    * *  into the browser.
    * */

   public void init() {
      /** Creates a new instance of Class */
      Centro sensor = new Centro();
      sensor1 = sensor.Consulta();
      img = getImage(getCodeBase(),"imagens/centro.png");
   }

   public void paint(Graphics g){
      g.drawString(sensor1,5,10);
      g.drawImage(img, 10, 10, 50, 50, this);
   }
}

Já confirmei, o jar já está
lá e as outras pastas também(ogt e comm). Alguém já viu algo assim?
Desde já agradeço! :smiley:

Daniel_Quirino_Olive

Seu problema está aqui:

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")/*/.newInstance()*/; String usuario = "root", password = ""; Connection con = DriverManager.getConnection( "jdbc:mysql://192.168.1.14:3306/dbjsp", usuario, password);
Você está instanciando um driver do tipo JDBC-ODBC e usando a URI de conexão do driver JDBC do MySQL. Ou você instancia o driver do MySQL ou você usa a URI correta para o driver JDBC-ODBC. Aliás, se você for usar JDBC-ODBC, não se esqueça de criar o DataSource.

A propósito, a URI para o driver JDBC-ODBC é:

String uri = "jdbc:odbc:<nome_do_datasource>";
cancao

“samurai”:
.;.;D:ARQUIV~1JMF21~1.1Elibsound.jar;D:ARQUIV~1JMF21~1.1Elibjmf.jar;D:ARQUIV~1JMF21~1.1Elib;.;.;D:ARQUIV~1JMF21~1.1libsound.jar;D:ARQUIV~1JMF21~1.1libjmf.jar;D:javajrelibext;

Bom, o arquivo do driver não aparece no seu classpath. Ele tem o nome como mysql-connector-java-x.x.x-stable-bin.jar onde os x’s representam a versão do driver. Coloque exatamente o caminho completo desse arquivo no seu classpath que deve funcionar.

Até.

Criado 24 de outubro de 2003
Ultima resposta 27 de out. de 2003
Respostas 7
Participantes 6