Database
 sql >> Baza danych >  >> RDS >> Database

Łączenie się z Lotus Notes z Javy

Przed połączeniem aplikacji Java z programem Lotus Notes przy użyciu mostka JDBC-ODBC należy skonfigurować źródło danych sterownika ODBC NotesSQL. Źródło danych ODBC przechowuje szczegóły połączenia z docelową bazą danych (np. Notes) oraz sterownik ODBC wymagany do połączenia z nią (np. sterownik ODBC NotesSQL).

Uwaga Zalecamy zainstalowanie wersji 8.0 sterownika ODBC NotesSQL, który jest w pełni zgodny z ODBC (chociaż ze wcześniejszą specyfikacją ODBC niż późniejsze wersje sterownika, które są częściowo zgodne z ODBC 3.5).

  1. Uruchom administratora ODBC. Aby to zrobić, w oknie dialogowym Uruchom systemu Windows wpisz:
    %windir%\syswow64\odbcad32.exe
  2. W Administratorze ODBC wybierz zakładkę System DSN, a następnie wybierz Dodaj.
  3. W oknie dialogowym Utwórz nowe źródło danych wybierz Sterownik ODBC NotesSQL, a następnie wybierz Zakończ.
  4. Wypełnij okno dialogowe konfiguracji sterownika ODBC NotesSQL.
  5. Pobierz mostek Easysoft JDBC-ODBC. (Wymagana rejestracja.)
  6. Zainstaluj i uzyskaj licencję Easysoft JDBC-ODBC Bridge na komputerze, na którym utworzono źródło danych.

    Instrukcje instalacji można znaleźć w dokumentacji Easysoft JDBC-ODBC Bridge.

Łączenie z Lotus Notes z Javy

  1. W Administratorze sieciowym JDBC-ODBC Bridge na stronie Konfiguracja włącz opcję MultiProcess.
  2. Skopiuj plik EJOB.jar na komputer, na którym zainstalowano pakiet Java Development Kit.

    Jeśli Easysoft JDBC-ODBC Bridge jest już zainstalowany na tym komputerze, pomiń ten krok.

    EJOB.jar jest zainstalowany w następującej lokalizacji na komputerze, na którym instalujesz Easysoft JDBC-ODBC Bridge:

    <easysoft_install>\Jars

    Domyślna lokalizacja to <drive>:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge .

  3. Dodaj ten kod Java do pliku o nazwie ConnectToNotes.java:
    import easysoft.sql.*;
    import java.sql.*;
    import java.util.Calendar;
    import java.util.Date;
    
    
    public class ConnectToNotes {
    
      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/My32bitNotesSQLSystemDSN:logonuser=mywindowsuser:logonpassword=mywindowspassword";
          Connection con = DriverManager.getConnection(jobUrl, "mynotesuser", "mynotespassword");
          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);
        }
        }
    } 
  4. W oknie poleceń dodaj plik EJOB.jar do ścieżki klasy Java. Na przykład:
    set CLASSPATH="%CLASSPATH%;C:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge\Jars\EJOB.jar"
  5. cd do katalogu, w którym znajduje się ConnectToNotes.java, a następnie skompiluj i uruchom plik Java. Na przykład:
    "C:\Program Files\Java\jdk1.8.0_144\bin\javac.exe" ConnectToNotes.java
    java ConnectToNotes

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 sposoby wybierania wierszy, które pasują do wszystkich pozycji na liście (T-SQL)

  2. Minimalizowanie wpływu poszerzenia kolumny TOŻSAMOŚĆ – część 3

  3. Dopasowanie podaży do popytu — rozwiązania, część 1

  4. Tworzenie bardziej zaawansowanego modelu ze statusami użytkownika, wątku i postu

  5. 30 najważniejszych pytań do wywiadu SQL, które musisz ćwiczyć w 2022 r.