UltraLite Static Java User's Guide
Introduction to the Static Java API
UltraLite provides several programming interfaces, including both static development models (of which the static Java interface is one) and UltraLite components. A Java-based component (Native UltraLite for Java) is among those available.
The static Java API has the following advantages:
Pure Java solution The UltraLite runtime library for the static Java API is a pure Java application. This is different from the Native UltraLite for Java component, which shares the same C++-based UltraLite runtime library as other UltraLite interfaces. In the Native UltraLite for Java component, access to the UltraLite runtime is provided by native methods.
Extensive SQL support With the static Java API you can use a wider range of SQL in your applications than using the component-based interface.
The static Java API has the following disadvantages:
Complex development model The use of a reference database to hold the UltraLite database schema, together with the need to generate classes for your specific application, makes the static Java API development process complex. The UltraLite components, including Native UltraLite for Java, provide a much simpler development process.
SQL must be specified at design time Only SQL statements defined at compile time can be included in your application. The UltraLite components allow dynamic use of SQL statements.
The choice of development model is guided by the needs of your particular project, and by the programming skills and experience available.