Avatar billede repsak Nybegynder
20. juni 2002 - 23:14 Der er 3 kommentarer og
1 løsning

Database og applet

Hejsa,
Hvordan får jeg et applet (der kun kører lokalt fra min harddisk) til at arbejde sammen med en Interbase-database (der også ligger lokalt)? Jeg er nemlig nybegynder på dette område...

/Kasper
Avatar billede disky Nybegynder
20. juni 2002 - 23:21 #1
laver en forbindelse til den og sender queries afsted og parser resultsets

Kig her i java gruppen min database handler er blevet postet de første 20 gange.
Avatar billede Slettet bruger
21. juni 2002 - 08:25 #2
jep, men du slipper nok ikke alligevel :-)
Avatar billede disky Nybegynder
21. juni 2002 - 09:08 #3
Her er klassen så slipper du får at lede:
med har du lige her:

Localhost bytter du ud med IP nummeret på din database server, som SKAL være den samme som din webserver.

p.s. brug en ordentlig database interbase er noget hø.


Her er min database klasse

parametere til open metoden er:
"org.gjt.mm.mysql.Driver","jdbc:mysql://localhost/DatabaseNavn","username","password"


Nej du skal ikke sætte odbc op :)

Du skal egentligt bare bruge en JDBC driver til java.


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);
                System.out.println("con = "+con);
            }
        }
        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 disky Nybegynder
21. juni 2002 - 09:08 #4
ups du skal også skrive navnet på din databases driver istedet for mysql driveren.
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