FireStorm/DAO Technical Architecture

Code Generation Architecture

FireStorm/DAO Schema Import Framework

FireStorm/DAO can import relational database schemas from Database Definition Language (DDL) scripts and can also import schemas from a JDBC connection to a live database.

Importing from supported databases

FireStorm/DAO contains specific support for the DDL syntax and data types used by Oracle, DB2, Microsoft SQL Server, Sybase, Informix, MySQL, InnoDB, PostgreSQL. FireStorm/DAO™ also has intelligent support for auto-increment columns and sequences used by MySQL, Oracle, and DB2.

Importing with generic databases

FireStorm/DAO can import schemas from any relational database that supports ANSI-SQL or has a JDBC driver available.


FireStorm/DAO Project &Configuration Meta-Data

Project Meta-Data

FireStorm/DAO projects are stored in an easy-to-understand XML format making it easy to share projects with other developers and store them in source control systems such as CVS. FireStorm/DAO™ ships with an XML Schema Definition (XSD) file making it easy to manipulate the project meta-data using external tools.

Configuration Meta-Data

FireStorm/DAO™ stores all of its configuration data in XML format.


FireStorm/DAO™ Code Generation Framework

FireStorm/DAO has a powerful code generation framework allowing custom code generation modules to be developed (Architect Edition only). The API provides access to all of FireStorm/DAO's configuration and project meta-data in a simple Java object-model removing the need to parse the underlying XML files. FireStorm/DAO's code generation framework also provides a highly object-oriented approach to creating Java source files.

Custom Code Generation Module

This Architect Edition-only module allow the DAO code generation modules to be customized to:

J2EE Code Generation Module

This code generation module creates JSP pages for each DAO allowing them to be tested very easily. Each DAO is also wrapped in a Stateless Session Bean making it easy to publish the DAO objects as transactional components as part of a Service-Oriented architecture (SOA). J2EE deployment descriptors are also generated for the target platform (JBoss, WebLogic, WebSphere)

When generating code for J2EE it is possible to choose between JDBC DAO, CMP EJB DAO, or JPA DAO for the DAO implementation code.

Apache Struts/JSP Code Generation Module

This module generates a complete Web application for interacting with the generated DAO tier. The generated application is based on the Apache Struts framework and contains full functionality for inserting, updating, deleting, and searching records using the DAO tier.

CMP EJB Code Generation Module

Generates Entity Bean source code for each table as well as CMP deployment descriptors for the target platform.

JDBC Code Generation Module

Generates DAO implementation using plain JDBC/SQL calls.

DAO Code Generation Module

This module generates Data Access Object (DAO) interfaces, Data Transfer Object (DTO) classes, and DAO exception classes. The JDBC, EJB CMP, and JDO code generation modules generation concrete implementations of the DAO interfaces.


FireStorm/DAO Ant Tasks

FireStorm/DAO contains Ant tasks for importing schemas and generating code, making it easy to incorporate FireStorm/DAO™ into automated build systems.

FireStorm/DAO™ Command Line

The command line interface is ideal when running FireStorm/DAO on remote Unix servers where only a console interface is available.


FireStorm/DAO Studio

FireStorm/DAO Studio is an easy-to-use graphical user interface for importing schemas, manipulating meta-data, and generating code.

Download FireStorm/DAO