Database
 sql >> Base de données >  >> RDS >> Database

Connexion à Sage depuis Java

Avant de pouvoir connecter votre application Java à Sage à l'aide du pont JDBC-ODBC, vous devez configurer une source de données de pilote ODBC Sage. Une source de données ODBC stocke les détails de connexion pour la base de données cible (par exemple, Sage) et le pilote ODBC requis pour s'y connecter (par exemple, le pilote ODBC Sage).

  1. Démarrez l'administrateur ODBC. Pour ce faire, dans la boîte de dialogue Exécuter de Windows, saisissez :
    %windir%\syswow64\odbcad32.exe
  2. Dans l'administrateur ODBC, choisissez l'onglet DSN système, puis choisissez Ajouter.
  3. Dans la boîte de dialogue Créer une nouvelle source de données, choisissez Sage ODBC Driver, puis choisissez Finish.
  4. Renseignez la boîte de dialogue de configuration du pilote ODBC Sage.
  5. Téléchargez le pont Easysoft JDBC-ODBC. (Inscription requise.)
  6. Installez et autorisez Easysoft JDBC-ODBC Bridge sur la machine sur laquelle vous avez créé la source de données.

    Pour obtenir des instructions d'installation, consultez la documentation Easysoft JDBC-ODBC Bridge.

Connexion à Sage depuis Java

  1. Copiez EJOB.jar sur une machine sur laquelle un kit de développement Java est installé.

    Si le pont Easysoft JDBC-ODBC est déjà installé sur cette machine, ignorez cette étape.

    EJOB.jar est installé à l'emplacement suivant sur la machine sur laquelle vous installez le pont Easysoft JDBC-ODBC :

    <easysoft_install>\Jars

    L'emplacement par défaut pour est <drive>:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge .

  2. Ajoutez ce code Java à un fichier nommé ConnectToSage.java :
    import easysoft.sql.*;
    import java.sql.*;
    import java.util.Calendar;
    import java.util.Date;
    
    
    public class ConnectToSage {
    
      public static void main(String[] args) throws Exception {
    
            String[] szTableTypes;
            szTableTypes = new String[100];
    
            String[] szTableNames;
            szTableNames = new String[1000];
    
            int[]  szTypeCount;
            szTypeCount = new int[100];
    
            int intTableTypes;
    
        try {
    
          easysoft.sql.jobDriver driver = (easysoft.sql.jobDriver)Class.forName("easysoft.sql.jobDriver").newInstance();
    
          String jobUrl= "jdbc:easysoft://localhost/My32bitSageSystemDSN:logonuser=mywindowsuser:logonpassword=mywindowspassword";
          Connection con = DriverManager.getConnection(jobUrl, "mysageuser", "mysagepassword");
          System.out.println(" ");
          System.out.println("------------------ Method Summary ------------------");
          try {
              int i;
              boolean bl;
              String st;
    
              DatabaseMetaData dbMD = null;
              dbMD = con.getMetaData();
    
    
    //------------------------------------------------------------------------
              try {
                  ResultSet rt = dbMD.getTableTypes();
                  intTableTypes=0;
                  st="";
                  while (rt.next()) {
                      szTableTypes[intTableTypes]=rt.getString(1);
                      intTableTypes++;
                  }
                  for (i=0; i<intTableTypes; i++)
                  {
                      st=st + szTableTypes[i] + "; ";
                  }
                  System.out.println("Table types (" + intTableTypes + ") : "+ st );
    
                  // Go get the tables e.t.c.
    
                  try {
                      int x;
                      ResultSet rs = dbMD.getTables( null, null, "%", null );
                      while (rs.next()) {
                          for (x=0; x<intTableTypes; x++)
                          {
                              System.out.println("TABLE_CAT : " + rs.getString(1));
                              System.out.println("TABLE_SCHEM : " + rs.getString(2));
                              System.out.println("TABLE_NAME : " + rs.getString(3));
                              System.out.println("TABLE_TYPE : " + rs.getString(4));
                              System.out.println("REMARKS  : " + rs.getString(5));
     System.out.println("------------------------------------------------------");
                          }
                      }
                  } catch (Exception e) {
                      System.out.println("getTables error : " + e );
                  }
    
              } catch (Exception e) {
                  System.out.println("getTableTypes error : " + e );
              }
     //------------------------------------------------------------------------
          }  catch(Exception e) {
              System.out.println("db Meta Data exception: " + e);
              e.printStackTrace();
          }
        } catch(Exception e){
                System.out.println("Java code error : " + e);
        }
        }
    } 
  3. Dans une fenêtre de commande, ajoutez EJOB.jar au chemin de classe Java. Par exemple :
    set CLASSPATH="%CLASSPATH%;C:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge\Jars\EJOB.jar"
  4. cd dans le répertoire où se trouve ConnectToSage.java, puis compilez et exécutez le fichier Java. Par exemple :
    "C:\Program Files\Java\jdk1.8.0_144\bin\javac.exe" ConnectToSage.java
    java ConnectToSage