Avatar billede aslan Nybegynder
11. februar 2002 - 20:54 Der er 10 kommentarer og
1 løsning

oprette forbindelse til mysql og lave query?

Er der en der gider at forklare mig hvordan jeg opretter forbindelse til min mysql database i java og henter noget data ud?Jeg har lidt erfaringer med php og mysql, men med java er jeg på herrens mark:)
Avatar billede disky Nybegynder
11. februar 2002 - 21:03 #1
Du bruger denne klasse:

I den skal open() kaldes med f.eks. følgende parametere:

open("org.gjt.mm.mysql.Driver","jdbc:mysql://SERVERNAME/DATABASENAVN","USERNAME","PASSWORD");

ret det med uppercase.

Derefter kalder du f.eks. executeQuery("Select * from TABEL");

Den returnerer så et Resultset som du kan skanne igennem efter resultater (ligesom det array du får retur i php).

/*
* DataBase.java
*
* Created on 3. december 2000, 21:06
*/
import java.sql.*;

import disky.database.*;

/**
*
* @author  Søren Reinke
* @version
*/

/*
* Funder lidt over om database forbindelsen kun skal åbnes ved brug, eller x antal altid skal være åben
* og man så bruge den/de som connection pool
*/


public class DbHandler extends Object
{
   
    private Connection con=null;

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

    public boolean open(String dbDriverName, String dbClassName, String user, String pass)
    {           
        try
        {
            if(con==null)
            {
                Class.forName(dbDriverName).newInstance();
                con = DriverManager.getConnection(dbClassName, user, pass);
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace(System.out);
            return false;
        }
        catch (ClassNotFoundException e)
        {
            e.printStackTrace(System.out);
            return false;
        }
        catch (InstantiationException e)
        {
            e.printStackTrace(System.out);
            return false;
        }
        catch (IllegalAccessException e)
        {
            e.printStackTrace(System.out);
            return false;
        }
        return true;
    }
   
    public void close()
    {
        if(con!=null)
        {
            try
            {
                con.close();
                con=null;
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
    }
   
    public int doUpdate(String sql)
    {
        if(con!=null)
        {
            try
            {
                long time=System.currentTimeMillis();
                Statement stat=con.createStatement();
                System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms  "+sql);
                return stat.executeUpdate(sql);       
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
        return 0;
    }

    public ResultSet doQuery(String sql)
    {
        if(con!=null)
        {
            try
            {
                long time=System.currentTimeMillis();
                Statement stat=con.createStatement();
                System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms  "+sql);
                return stat.executeQuery(sql);       
            }
            catch (SQLException e)
            {
                e.printStackTrace(System.out);
            }
        }
        return null;
    }
   
}
Avatar billede aslan Nybegynder
11. februar 2002 - 21:09 #2
Hvad skal jeg gemme siden som inde på webserveren?
Avatar billede disky Nybegynder
11. februar 2002 - 21:28 #3
Det jeg postede er en .java fil den skal du kompile til en .class fil og gemme den i din webservers /WEB-INF/classes/ dir.

Jeg går ud fra du har installeret en Java/Jsp duelig server.

F.eks. Resin fra www.caucho.com

Du anvender så klassen fra f.eks. en JSP side som du anvender enhver java klasse.
Avatar billede aslan Nybegynder
13. februar 2002 - 18:32 #4
Hvad er caucho?
Avatar billede disky Nybegynder
13. februar 2002 - 18:42 #5
Et firma som laver en af de bedste low cost java servers, nemlig Resin.
Avatar billede aslan Nybegynder
13. februar 2002 - 20:00 #6
Hvad hvis jeg er en fattig datamatiker studerende og ikke har råd og stadig vil sætte min egen java-mysql server op?
Avatar billede jakovski Nybegynder
13. februar 2002 - 23:18 #7
Du skal bruge en database package se

http://nostromo.ikasths.dk/docjava/default.htm

under databaseprogrammering og database-package.
Desuden er der meget godt i DocJava.
Avatar billede Slettet bruger
08. maj 2002 - 00:24 #8
Du kan oxo bruge Tomcat, hvis det du skal lave ikke har for mange statiske sider og du ikke er den store log-kigger kan du sagtens afvikle fra Tomcat alene. Det er dog ikke den hurtigste løsning, men den er nem :-)
Avatar billede aslan Nybegynder
04. juni 2002 - 13:58 #9
ehm..
Avatar billede disky Nybegynder
04. juni 2002 - 15:12 #10
Aslan.

Hvad gik der lige galt her ?

Jeg giver dig en fungerende løsning, og du beholder point.

Resin må du godt bruge gratis til udviklingsformål, bare ikke kommercielt.
P.s. Drop alt om tomcat, det er et temmeligt dårlig produkt.

Maximus:
Tomcat er i forhold til Resin overhovedet ikke nem.
Avatar billede aslan Nybegynder
04. juni 2002 - 15:48 #11
øhhh jeg rydte op i gamle oprettede spørgsmål... er apache en Java/Jsp duelig server?
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