Database
 sql >> Datenbank >  >> RDS >> Database

Salesforce-SOQL von Java

Der Salesforce ODBC-Treiber erweitert die Anzahl der Anwendungen, in denen Sie Salesforce SOQL verwenden können. In diesem Blog beschreiben wir, wie Sie SOQL-Anweisungen von Java ausführen, indem Sie den Salesforce-ODBC-Treiber unter unserer JDBC-ODBC-Brücke, Java-zu-ODBC-Konnektor, verwenden.

Um loszulegen:

  • Installieren und lizenzieren Sie den Salesforce.com ODBC-Treiber auf dem Computer, auf dem der JDBC-ODBC Bridge-Server installiert ist.

Bevor Sie den Salesforce.com-ODBC-Treiber verwenden können, um Ihre Anwendung mit Salesforce.com zu verbinden, müssen Sie eine ODBC-Datenquelle konfigurieren. Eine ODBC-Datenquelle speichert die Verbindungsdetails für die Zieldatenbank (z. B. Salesforce.com) und den ODBC-Treiber, der für die Verbindung dazu erforderlich ist (z. B. der ODBC-Treiber von Salesforce.com).

  1. Starten Sie den ODBC-Administrator. Geben Sie dazu im Windows-Dialogfeld „Ausführen“ Folgendes ein:
    %windir%\syswow64\odbcad32.exe
  2. Wählen Sie im ODBC-Administrator die Registerkarte System-DSN und dann Hinzufügen.
  3. Wählen Sie im Dialogfeld „Neue Datenquelle erstellen“ die Option „Easysoft Salesforce SOQL ODBC-Treiber“ und dann „Fertig stellen“.
  4. Vervollständigen Sie das Dialogfeld Easysoft Salesforce SOQL ODBC Driver DSN Setup:
    Setting Wert
    DSN Salesforce.com
    Benutzername Der Name Ihres Salesforce.com-Benutzers. Beispiel:[email protected].
    Passwort Das Passwort für Ihren Salesforce.com-Benutzer.
    Token Das Sicherheitstoken für Ihren Salesforce.com-Benutzer, falls erforderlich.

    Um herauszufinden, ob Sie ein Sicherheitstoken angeben müssen, wählen Sie die Schaltfläche Test. Wenn der Verbindungsversuch mit einem Fehler fehlschlägt, der LOGIN_MUST_USE_SECURITY_TOKEN enthält , müssen Sie einen angeben.

    Salesforce.com sendet das Sicherheitstoken per E-Mail an die E-Mail-Adresse, die Ihrem Salesforce.com-Benutzerkonto zugeordnet ist. Wenn Sie kein Sicherheitstoken erhalten haben, können Sie es neu generieren. Salesforce.com sendet Ihnen dann das neue Sicherheitstoken per E-Mail zu. Melden Sie sich zum erneuten Generieren Ihres Sicherheitstokens bei Salesforce.com an und wählen Sie dann Setup aus dem Benutzermenü. Suchen Sie im Feld „Schnellsuche“ nach „Sicherheitstoken“. Klicken Sie auf der Seite „Sicherheitstoken zurücksetzen“ auf „Sicherheitstoken zurücksetzen“. Wenn Sie das Token in Ihrem E-Mail-Client erhalten, kopieren Sie es und fügen Sie es dann in das Token-Feld ein.

  5. Verwenden Sie die Test-Schaltfläche, um zu überprüfen, ob Sie erfolgreich eine Verbindung zu Salesforce.com herstellen können.
  6. Laden Sie die Easysoft JDBC-ODBC Bridge herunter. (Anmeldung erforderlich.)
  7. Installieren und lizenzieren Sie Easysoft JDBC-ODBC Bridge auf dem Computer, auf dem Sie die Datenquelle erstellt haben.

    Installationsanweisungen finden Sie in der Easysoft JDBC-ODBC Bridge-Dokumentation.

Salesforce-SOQL von Java verwenden

  1. Kopieren Sie EJOB.jar auf einen Rechner, auf dem Sie ein Java Development Kit installiert haben.

    Wenn die Easysoft JDBC-ODBC Bridge bereits auf diesem Computer installiert ist, überspringen Sie diesen Schritt.

    EJOB.jar wird am folgenden Speicherort auf dem Computer installiert, auf dem Sie Easysoft JDBC-ODBC Bridge installieren:

    <easysoft_install>\Jars

    Der Standardspeicherort für ist <drive>:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge .

  2. Fügen Sie diesen Java-Code zu einer Datei namens ConnectToSalesforce.java hinzu:
    import java.sql.*;
    import java.util.Properties;
    
    public class ConnectToSalesforce {
    
       public static void main(String[] args) {
    
          // Replace the <mydsn> value with your 32-bit Salesforce DSN.
          // If the JDBC-ODBC Bridge Server (JOB) is not located on the same machine as
          // ejob.jar replace localhost with the remote host name or IP address.
          // The :logonuser attribute value is a Windows user on the machine where
          // the JOB Server is running.
          String connectionUrl = "jdbc:easysoft://localhost/<mydsn>" +
             ":logonuser=mywindowsuser:logonpassword=mywindowspassword";
    
          Driver driver = null;
          DriverPropertyInfo props[] = null;
          Connection con = null;
          Statement stmt = null;      
          ResultSet rs = null;
    
          try {
           // Register the Easysoft JDBC-ODBC Bridge client.
           Class.forName("easysoft.sql.jobDriver");
           driver = DriverManager.getDriver(connectionUrl);
    
           con = DriverManager.getConnection(connectionUrl);
    
           stmt = con.createStatement();
    
           // You need to edit this query
           rs = stmt.executeQuery("SELECT Account.Name, (SELECT Contact.LastName FROM Account.Contacts) FROM Account");
    
           System.out.print("Name LastName" + "\n");
           
           while (rs.next()) {
               String n = rs.getString("Name");
               String l = rs.getString("LastName");
               System.out.print(n + " " + l + "\n");
           }
    
           rs.close();
           rs = null;
           stmt.close();
           stmt = null;
           con.close(); // Return to connection pool
           con = null;  // Make sure we do not close it twice	 
    
          }
    
          // Handle any errors that may have occurred.
          catch (Exception e) {
              e.printStackTrace();
          }
          finally {
              if (rs != null) try { rs.close(); } catch(Exception e) {}
              if (con != null) try { con.close(); } catch(Exception e) {}
          }
       }
    }
    
  3. Fügen Sie in einem Befehlsfenster EJOB.jar zum Java-Klassenpfad hinzu. Beispiel:
    set CLASSPATH="%CLASSPATH%;C:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge\Jars\EJOB.jar"
  4. cd in das Verzeichnis, in dem sich ConnectToSalesforce.java befindet, und kompilieren und führen Sie die Java-Datei aus. Beispiel:
    "C:\Program Files\Java\jdk1.8.0_144\bin\javac.exe" ConnectToSalesforce.java
    java ConnectToSalesforce
    Name LastName
    GenePoint Ltd Frank
    United Oil & Gas, UK James
    United Oil & Gas, Singapore D'Cruz
    United Oil & Gas, Singapore Ripley