Avatar billede mortena Nybegynder
27. februar 2001 - 19:52 Der er 14 kommentarer og
1 løsning

tomcat - MySQL forbindelse

Jeg skal på en eller anden måde lave en forbindelse fra en servlet, der kører på en tomcat server til en MySQL database. Hvordan gøres det? Skal jeg ændre i opsætningen af TOMCAT og hvordan?
Jeg synes ikke der står det helt store i min 1120 siders bog om emnet, ej heller kan jeg finde noget på nettet, så hjælp er meget velkommen.
Avatar billede nute Nybegynder
27. februar 2001 - 20:13 #1
jeg vil anbefale deg å se på denne side:

http://developer.java.sun.com/developer/onlineTraining/Programming/JDCBook/jdbc.html

der står det en hel del om jdbc-connections...

jeg har ikke benyttet meg av MySQL selv, men kan denne hjelp deg:

String url =
  \"jdbc:mysql://localhost/ejbdemo?user=user;
      password=pass\";

/nute
Avatar billede disky Nybegynder
28. februar 2001 - 08:53 #2
Hejsa her har du hele den .java fil jeg bruger når jeg skal connecte til en SQL database

Ellers bare spørg løs

/*
* DataBase.java
*
* Created on 3. december 2000, 21:06
*/
package disky.database;

import java.sql.*;

/**
*
* @author  Søren Reinke
* @version
*/
public class DataBase extends Object
{
    Connection con=null;

    /** Creates new DataBase */
    public DataBase()
    {
    }

    public boolean openConnection(String server)
    {           
        try
        {
            if(con==null)
            {
                Class.forName(\"org.gjt.mm.mysql.Driver\").newInstance();
                con = DriverManager.getConnection(server,\"username\", \"password\");
                return true;
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace(System.out);
        }
        catch (ClassNotFoundException e)
        {
            e.printStackTrace(System.out);
        }
        catch (InstantiationException e)
        {
            e.printStackTrace(System.out);
        }
        catch (IllegalAccessException e)
        {
            e.printStackTrace(System.out);
        }
        return false;
    }
   
    public void closeConnection()
    {
        if(con!=null)
        {
            try
            {
                con.close();
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
    }
   
    public int doUpdate(String sql)
    {
        if(con!=null)
        {
            try
            {
                Statement stat=con.createStatement();
                return stat.executeUpdate(sql);       
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
        return 0;
    }

    public ResultSet doQuery(String sql)
    {
        if(con!=null)
        {
            try
            {
                Statement stat=con.createStatement();
                return stat.executeQuery(sql);       
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
        return null;
    }
}
Avatar billede mortena Nybegynder
28. februar 2001 - 15:15 #3
OK, det lyder rimeligt.

con = DriverManager.getConnection(server,\"username\", \"password\");

kunne for eksempel være:

con = DriverManager.getConnection(\"http://localhost:3365\",\"mortena\", \"******\");

Eller kalder jeg serveren på en anden måde?
Avatar billede disky Nybegynder
28. februar 2001 - 15:17 #4
ups havde jeg lige glemt

jeg klader den på følgende måde.

db.openConnection(\"jdbc:mysql://localhost/ClassOf2000\");
Avatar billede nute Nybegynder
28. februar 2001 - 15:21 #5
du skal vel ha med et brukernavn/password ?!

db.openConnection(\"jdbc:mysql://localhost/ClassOf2000?user=xx;pass=yy\");
Avatar billede disky Nybegynder
28. februar 2001 - 15:22 #6
nej for den står i den anden fil.
Avatar billede nute Nybegynder
28. februar 2001 - 15:23 #7
hvilken driver benytter du ?
Avatar billede disky Nybegynder
28. februar 2001 - 15:23 #8
nute: men man kan sikkert også gøre det på den måde du viser.

Men min løsning er lavet til en MySql server, mange databaser, hvor username/password altid er det samme :-) (min egen eksperimentel server)
Avatar billede disky Nybegynder
28. februar 2001 - 15:24 #9
org.gjt.mm.mysql.Driver
Avatar billede nute Nybegynder
28. februar 2001 - 15:26 #10
:) jeg kan jo ikke lese....:) det går litt rundt for meg hvem som er hvem og hvem som egentlig stiller spørsmål :)
Avatar billede disky Nybegynder
28. februar 2001 - 15:27 #11
hehehe :-)

det lyder bekendt
Avatar billede nute Nybegynder
28. februar 2001 - 15:28 #12
mortena >> har du egentlig et problem ? er det løst ?

/nute
Avatar billede mortena Nybegynder
28. februar 2001 - 18:17 #13
Altså jeg åbner forbindelsen ved hjælp af

db.openConnection(\"jdbc:mysql://localhost/ClassOf2000\");

og når jeg så skal bruge databasen skriver jeg:

con = DriverManager.getConnection(\"http://localhost:3365\",\"mortena\", \"******\");

Korrekt?

Eller skal der stå:

con = DriverManager.getConnection(\"jdbc:mysql://localhost:3365\",\"mortena\", \"******\");

Mortena

Avatar billede mortena Nybegynder
28. februar 2001 - 19:35 #14
Nu har jeg den.

Tak for hjælpen.
Avatar billede disky Nybegynder
01. marts 2001 - 09:04 #15
du fik den til at køre ?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester