Skip to main content

InterSystems Java Connectivity Options

InterSystems IRIS® provides a wide variety of robust Java connectivity options:

The InterSystems JDBC driver is at the core of all InterSystems IRIS Java solutions. It is a powerful Type 4 (pure Java) fully compliant implementation of JDBC, closely coupled to InterSystems IRIS for maximum speed and efficiency.

Core Data Access SDKs

The InterSystems JDBC driver supports three lightweight Java SDKs that provide direct access to InterSystems IRIS databases via relational tables, objects, and multidimensional storage.

Important:

The Core Data Access SDKs and External Server gateways form an integrated suite of utilities that can all share the same underlying reentrant connection context. Your application can use any combination of desired features from any part of the suite.

JDBC driver for relational table access

The InterSystems JDBC driver (described in this book) provides SQL based access to relational tables. It supports the following features:

  • relational access

    • store and query tables via SQL

    • stored JDBC tables can be accessed as InterSystems IRIS objects

  • JDBC driver optimized for InterSystems IRIS

    • fully implemented type 4 (pure Java) JDBC

    • extensions for unique InterSystems IRIS property settings

    • high speed batch reads

    • automatic connection pooling

  • support for third party Java frameworks

    • optimized Spark JDBC data source API

    • Hibernate support

Detailed information is provided in later chapters of this book, and in the “JDBC Driver Support” chapter of the Implementation Reference for Java Third Party Software.

XEP SDK for object access

The InterSystems XEP SDK is designed for extremely fast acquisition of data objects in real time, and can also be used as a convenient general purpose ORM interface. It supports the following features:

  • optimized for speed

    • ultra-high speed real-time data acquisition. It can acquire data many times faster than standard JDBC.

    • batch reads

    • fine control over data serialization

  • object-based access

    • lightweight alternative to Hibernate

    • store and query objects (create/read/update/delete)

    • schema import and customization

    • mapping for most standard datatypes

    • stored objects can also be accessed as JDBC tables

  • full process control

    • control indexing and fetch level

    • control transactions and locking

See Persisting Java Objects with InterSystems XEP for details.

Native SDK for direct access to InterSystems IRIS resources

The InterSystems Native SDK for Java is a lightweight toolset that gives your Java applications access to resources formerly available only through ObjectScript. It supports the following features:

  • directly access and manipulate global arrays

    • create and delete nodes

    • iterate over nodes and create/read/update/delete values

    • control transactions and locking

  • call server-side ObjectScript code:

    • call methods and access properties from any compiled class

    • call functions or procedures from any compiled .mac file

  • Create Java server applications that give ObjectScript clients direct access to Java objects via External Server gateways.

See Using the Native SDK for Java for details.

InterSystems External Servers

InterSystems External Servers provide an easy way access and manipulate both ObjectScript and Java objects in the same context, using the same connection. External server gateways are completely reentrant, allowing Java applications to manipulate ObjectScript objects, and ObjectScript applications to manipulate Java objects, both using the same bidirectional connection and context (database, session and transaction).

ObjectScript applications can also use ODBC as an alternate connectivity option (providing access to .NET objects and ADO) without any major changes in your ObjectScript code.

See Using InterSystems External Servers for detailed information.

InterSystems SQL Gateway

The InterSystems SQL Gateway connects InterSystems IRIS to external databases via JDBC. Various wizards can be used to create links to tables, views, or stored procedures in external sources. This allows you to read and store data in the external database just as you would on InterSystems IRIS, using objects and/or SQL queries. You even can generate class methods that perform the same actions as corresponding external stored procedures.

SQL Gateway applications are written in ObjectScript and run on the server. They can also use ODBC as an alternate connectivity option (providing access to .NET objects and ADO) without any major changes in your ObjectScript code.

See Using the SQL Gateway for detailed information on both JDBC and ODBC options.

Third Party Framework Support

Java frameworks such as Spark and Hibernate use JDBC to interact with databases, and include interfaces that can be implemented to take advantage of features unique to a specific database. InterSystems IRIS provides implementations of the Spark Data Source interface and the Hibernate Dialect interface.

Spark Data Source API

The InterSystems Spark Connector is an implementation of the Data Source API for Apache Spark. It is a plug-compatible replacement for the standard Spark jdbc data source, allowing the Spark data processing engine to make optimal use of InterSystems IRIS and its distributed data capabilities

See Using the InterSystems Spark Connector for details.

Hibernate Dialect

The InterSystems Hibernate Dialect is a fully compliant implementation of the Hibernate dialect interface, providing a customized interface between Hibernate and InterSystems IRIS. Like most major dialect implementations, it is included as part of the Hibernate distribution.

See the “Hibernate Support” chapter in the Implementation Reference for Java Third Party Software for details.

Feedback