
Heute möchte ich all denen helfen, die das gleiche Problem wie ich haben.
In welchen Pfad muss man den JDBC Treiber für MySQL bei einem Mac kopieren?
Java und Datenbanken
Möchte man mit Java auf Datenbanken zugreifen, so muss man zuerst einen passenden Datenbank-Treiber installieren. Ich wollte auf eine MySQL Datenbank zugreifen. Die Vorgehensweise trifft ebenso für andere Datenbanken zu. Man muss nur den passenden Treiber verwenden.
So gehts: Java + MySQL + Mac
- aktuellen mySQL-Treiber ➙ JDBC Driver for MySQL herunterladen
- JDBC Driver entpacken
mysql-connector-java-xxx-bin.jar
in den Pfad/System/Library/Java/Extensions
kopieren- Erfolg unter Eclipse prüfen:
Run ➙ Run Configurations ➙ Source ➙ Default aufklappen ➙ mysql-connector-java
(siehe Screenshot)
Beispiel für mySQL Verbindung
In diesem Beispiel wird nur ganz einfach der Inhalt einer Tabelle ausgegeben.
import java.sql.*; public class mainApp { public static void main(String[] args) { //Minimum fuer Datenbankzugriff Driver drv; Connection con; Statement stm; ResultSet rs; ResultSetMetaData rsmd; int felder; String sql; //Kommunikation mit Db nur innerhalb Try-Catch try { //Driver erstellen drv = new com.mysql.jdbc.Driver(); //Driver registrieren DriverManager.registerDriver(drv); //Connection erstellen con = DriverManager.getConnection("jdbc:mysql://localhost/Versand","root","root"); stm = con.createStatement(); sql = "SELECT * FROM Artikel"; rs = stm.executeQuery(sql); rsmd = rs.getMetaData(); felder = rsmd.getColumnCount(); while(rs.next()) { for(int i = 1;i <= felder;i++) { System.out.print(rs.getString(i)+';'); } System.out.println(); } stm.close(); con.close(); } catch (Exception ex) { System.out.println(ex.toString()); } } }
Patrick meint
Oder ganz einfach in den Classpath einbinden. Und noch bequemer geht es mit Maven ;)
Christian meint
Maven kenn ich nicht,muss ich mir mal ansehen. Aber stimmt, das mit dem Classpath hätte ich auch machen können :-)
Patrick meint
Ich sag immer: „einmal Maven, immer Maven“ ;)
In meinen Best Of-Artikeln findest du ansonsten noch weitere Maven Tipps :)
In diesem Fall würde es ganz einfach so ablaufen: in Maven sagst du, du möchtest den mysql-connector haben und Maven lädt dir den Connector automatisch herunter und bindet ihn in den Classpath ein. Sollte mal eine Abhängigkeit wiederum Abhängigkeiten haben (transitive Abhängigkeiten) löst dir Maven diese automatisch auf.