InterSystems Java Connectivity Options
InterSystems IRIS® provides a wide variety of robust Java connectivity options:
-
Core Data Access SDKs provide lightweight data access via relational tables, objects, or globals.
-
InterSystems External Servers provide an easy way access and manipulate both ObjectScript and Java objects within the same context and connection.
-
InterSystems SQL Gateway provides customized connections to external databases and Java applications through an SQL interface.
-
Third Party Framework Support includes an interface implementation for Hibernate.
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.
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.
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 framework
-
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.
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.
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 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 an implementation of the Hibernate Dialect interface.
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.