Announcement

Collapse
No announcement yet.

Datenbankverbindung mit Oracle JDBC

Collapse
This topic is closed.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datenbankverbindung mit Oracle JDBC

    Hallo,
    Ich habe die Aufgabe, die Daten aus einer Datenbank-Tabelle auszulesen und die in eine XML-Datei importieren. Daher habe ich erstmal die Verbindung zur Datenbank aufgebaut. Dafür habe ich Oracle JDBC driver installiert und über das Eclipse Plugin Quantum habe ich den zugriff auf Datenbank bekommen. Nun möchte ich die Daten auslesen:
    Code:
    public class MySQLConnection {
        Logger logger;
        private static MySQLConnection instance = null;
        private static Connection con = null;
    
        private MySQLConnection(){
            try {
                Class.forName("oracle.jdbc.OracleDriver");
                System.out.println("Oracle JDBC driver loaded ok.");
                con= DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:wwwtha", "testUser", "testPassword");
            } catch (final ClassNotFoundException e) {
                e.printStackTrace();
                System.err.println("Exception: "+e.getMessage());
            } catch (final SQLException e) {
                System.err.println("Connect nicht moeglich");
                e.printStackTrace();
            }
    
    
        }
        public static MySQLConnection getInstance(){
            if(instance == null){
                instance= new MySQLConnection();
    
            }
            return instance;
        }
        public void getContact(){
            if (con != null){
                Statement query;
                try {
                    query= con.createStatement();
                    final String sql= "SELECT * FROM B_STAMM";
                    final ResultSet result = query.executeQuery(sql);
                    while(result.next()){
                        logger.info("IDENT_NR: " + result.getInt("IDENT_NR") + " - " + result.getString("MC_NAME1"));
                    }
                } catch (final SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
    und
    Code:
    public class Test {
        public static void main (final String [] args){
            MySQLConnection.getInstance().getContact();
    
        }
    }
    Apache Server läuft local und beim Ausführen (Run on Server) passiert nichts bei mir, auch keine Fehlermeldung!!!!
    Kann Jemand bitte mir sagen, wie man sowas ausführen kann. Das ist das erste Mal, dass ich mit Datenbanken arbeite.
    Vielen Dank im Voraus

  • #2
    Was ist die Frage?
    Wozu der Apache? Du hast keine Webanwendung, sondern eine Konsolenanwendung "Run As -> Java Application". Des Weiteren nützt dir der Apache nichts, da dieser keine JSP/JSF/Servlet ausführen kann. Hier ist ein Server wie Tomcat, JBoss oder glassfish zu nutzen

    In dieser Zeile sollte dir Eclipse eigentlich einen Fehler anzeigen:

    Statement query;

    nach

    Statement query=null;

    Warum sind deine Variablen und insbesondere die der Exception "final"?

    Der Modifizierer für den logger fehlt

    Warum ist die Klassenvariabe "Connection" static ? Du hast eine Singeltonklasse entworfen.

    EDIT
    Das ganze Thema gehört zu Java und nicht zu Oracle....
    Zuletzt editiert von Christian Marquardt; 27.06.2011, 07:43.
    Christian

    Comment


    • #3
      Entweder ist die Variable "con" null oder Deine Query liefert ein leeres ResultSet zurück. Deswegen siehst Du nichts. Wenn das ResultSet Rows enthalten würde, würdest Du nämlich eine NullpointerException kriegen, weil Du die Variable logger nicht initialisiert hast.

      Was kann man machen, um zu testen? Die Query mal von Hand mit einem Datenbanktool absetzen und sich die Ergebnisse anschauen. In der Klasse MySQLConnection (blöder Name, Du verbindest Dich mit Oracle und nicht MySql) in der Zeile "Class.forName.." einen Breakpoint setzen (Doppelklick auf die entspr. Zeilennummer) und dann die Klasse Test nicht mit "Run As" sondern mit "Debug As" starten.
      Gruß ngomo
      http://www.winfonet.eu

      Comment


      • #4
        geschlossen

        http://www.java-forum.org/datenbankp...uantum-db.html

        http://www.tutorials.de/enterprise-j...acle-jdbc.html
        Zuletzt editiert von Christian Marquardt; 27.06.2011, 13:11.
        Christian

        Comment

        Working...
        X