2009-06-06 3 views

Antwort

1

Ich gehe davon aus Sie eine Oracle 10g Datenbank bedeuten, wenn dies der Fall ist JDBC die Antwort, starten here (allgemein) und here (Oracle JDBC-Treiber).

3

Es gibt unzählige Möglichkeiten, diese bestimmte Katze zu enthäuten.

Zum einen hängt es davon ab, welche Web-Framework (falls vorhanden) Sie verwenden. Persönlich bin ich ein großer Fan von Spring unabhängig davon, welches Web-Framework Sie wählen. Es macht so viele Dinge einfacher. Leichte Persistenz-Frameworks gehören Spring JDBC und mein Favorit Ibatis.

In der Tat schrieb ich eine tutorial on using Spring and Ibatis. Tatsächlich verwendet es sogar Oracle 10g Express Edition ("Oracle XE").

1

Use (die Reihenfolge ist meine Präferenz)

Verwenden Sie nicht direkt JDBC, es sei denn, Sie haben nur eine Menge zusätzliche Zeit.

1
  • keine Daten in JSP abzurufen, eine MVC-Architektur verwenden oder zumindest die Daten im Servlet abrufen
  • Verwendung Frühling
  • einige DAO-Klassen schreiben oder wenn Sie am ORM Verwendung iBatis bevorzugen oder Ruhezustand
  • verfeinern Sie Ihre Frage, wenn Sie genauere Informationen benötigen, wie es es ist ein bisschen vage in Bezug auf was genau Sie
0

Andere Antworten aufgelistet haben, die besten Technologien wissen müssen, dass man auf eine auf jeden Fall verfolgen sollte, Komplimente dies. Aber um die Frage direkt zu beantworten, ist vielleicht die einfachste Antwort mit einem Beispiel eines einfachen alten JDBC:

private void getYourData() { 
    Connection conn = null; 
    PreparedStatement pstmt = null; 
    ResultSet rset = null; 
    try { 
     Context initContext = new InitialContext(); 
     Context envContext = (Context) initContext.lookup("java:/comp/env"); 
     DataSource ds = (DataSource) envContext.lookup("jdbc/yourDatabase"); 
     conn = ds.getConnection(); 
     pstmt = conn.prepareStatement(
       "select yourdata " + 
       " from yourtable " + 
       " where yourkey = ? " 
       ); 

     pstmt.setInt(1, yourKeyValue); 
     rset = pstmt.executeQuery(); 
     while (rset.next()) { 
      String yourData = rset.getString("yourdata"); 
     } 

     conn.commit(); 

    } catch (NamingException ne) { 
     log.error(ne.getMessage()); 
    } catch (SQLException se) { 
     log.error(se.getMessage()); 
    } finally { 
     if (rset != null) { 
      try { 
       rset.close(); 
      } catch (Exception e) { 
       log.error(e.getMessage()); 
      } 
     } 
     if (pstmt != null) { 
      try { 
       pstmt.close(); 
      } catch (Exception e) { 
       log.error(e.getMessage()); 
      } 
     } 
     if (conn != null) { 
      try { 
       conn.close(); 
      } catch (Exception e) { 
       log.error(e.getMessage()); 
      } 
     } 
    } 
} 
Verwandte Themen