nAz-guL Skrevet 21. januar 2004 Del Skrevet 21. januar 2004 (endret) Hei! Jeg lurer på om noen kan forklare hvordan dette fungerer. Jeg har lest rundt på mange sider, titta i manualer og testa mye forskjellig. Jeg bruker nå Java SDK 1.4.2_03 og har lastet ned Java-Connecter fra www.mysql.org. Har pakket ut denne inne i min java mappe; under lib/ext. Laget en global variabel CLASSPATH som er lik C:\Java\..\ext\ , her ligger com og org mappene fra JDBC'en fra mysql folkene. Så har jeg laget en kode som ser slik ut: import java.sql.*; public class FraBoka { public static void main(String[] args) { Connection con = null; try{ //here is the JDBC URL for the database String url = "jdbc:mysql://localhost?user=root&password="; //More on what the Statement and ResultSet Classes do later Statement stmt; ResultSet rs; Class.forName ("com.mysql.jdbc.Driver").newInstance(); // here is where the connection is made con = DriverManager.getConnection(url); } catch( SQLException e ){ e.printStackTrace(); } finally{ if( con != null){ try{ con.close();} catch(Exception e){} } } } } Når jeg kjører denne, får jeg denne feilmeldingen: java.lang.Error: Unresolved compilation problems: Unhandled exception type IllegalAccessException Unhandled exception type InstantiationException Unhandled exception type ClassNotFoundException at FraBoka.main(FraBoka.java:17) Exception in thread "main" Håper noen har noen tips til hva jeg kan ha gjort feil eller andre ting som må gjøres. PS. kjører WinXP med MySQL kjørende på egen maskin. nAz-guL EDIT: fiksa noe små greier Endret 21. januar 2004 av nAz-guL Lenke til kommentar
enden Skrevet 22. januar 2004 Del Skrevet 22. januar 2004 Hvis mySQL kjører på en egen maskin nytter det ikke å koble seg opp mot localhost (den maskinen du sitter på). Du må koble deg til IP'n til den maskinen mySQL ligger på Lenke til kommentar
nAz-guL Skrevet 24. januar 2004 Forfatter Del Skrevet 24. januar 2004 Takk for tipset .. fikk meg en annen server med MySQL nå, så det er ikke noe problem. Fikk ordnet problemet ved å føye til: "throws Exception" til klassen, vet ikke hvorfor da .. Så hvis noen har lyst til å forklare det er de velkomne.. nAz-guL Lenke til kommentar
Coq Rouge Skrevet 18. februar 2004 Del Skrevet 18. februar 2004 Ganske enkel liten feil egentlig. Det som skjer er at noen av kalla dine kaster de tre exceptionane du fikk der uten at du behandler dem. Eneste du catcher er SQLException. Alle exceptions må enten behandles ELLER kastes vidre. Det du gjør ved å legge til throws Exception til metoden er kort og godt bare å sende alle ubehandla feil oppover i systemet, i dette tilfellet helt opp til VM'en siden du her sitter med main classen i denne applikasjonen. Hvis du legger til følgende: catch (IllegalAccessException) { System.out.println ("IllegalAccessException"); } catch (InstantiationException) { System.out.println ("InstantiationException"); } catch (ClassNotFoundException) { System.out.println ("ClassNotFoundException"); } etter catch (SQLException){...} vil du få en mye snillere kode. Programmet vil fremdeles dø, men du kan nå gi vettuge tilbakemeldinger om hva som er feil. Coq Rouge (catch alt av exceptions) Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå