FireStorm/DAO is a Java Code Generator that can import existing database schemas (from a SQL script or from a live JDBC connection) or Stored Procedures and can then generate a complete persistence tier based on any of the following Java persistence technologies:
-Java Database Connectivity (JDBC) -Java Data Objects (JDO) -Enterprise JavaBeans (EJB) -Hibernate (new in Firestorm/DAO Release 3.0)
FireStorm/DAO generates Java source code and configuration files that developers would otherwise have to write by hand. FireStorm/DAO generates code that is compliant with the Data Access Object (DAO) design pattern (DAO is a core J2EE design pattern). FireStorm/DAO can also generate native persistence code for Object Relational Mapping (ORM) products (such as Hibernate or JDO-based products).
Major new features include:
Support for Stored Procedures - In addition to exposing tables, views, and custom SQL statements as Data Access Objects, FireStorm/DAO 2.4 now exposes Stored Procedures as Data Access Objects, unlocking legacy business logic stored in databases. Initially available for Sybase, Oracle, and SQL Server.
New Interactive SQL Tool allows queries to be tested directly from FireStorm/DAO
New wizards for importing databases and generating code
Full support for Apache Derby (open-source embedded Java database)
Improved support for Sybase ASE
It is now possible to generate Web Applications using simple JSP pages in addition to generating Web Applications based on Struts and Tiles FireStorm/DAO now uses JDOM 1.0 in place of a proprietary XML parser for reading/writing project files, allowing easier integration for OEM customers.
It is now possible to define Table DAO finder methods by defining a full SQL SELECT statement (that can be a multi-table join) instead of just defining the SQL WHERE clause.
In addition, there are numerous extra enhancements, particularly around usability. For example, when defining new columns (or amending existing columns), the usability enhancements include:
FireStorm/DAO now provides a combobox for selecting SQL data types rather than a free-form text input, and populates this combobox with the appropriate data types for the selected database platform.
The SQL precision and scale fields are now only enabled if a SQL data type is selected that supports precision and/or scale
The JDBC type is automatically set based on the SQL data type selected Autofill buttons (represented as small light bulbs next to input fields) are available to set the column's SQL name and SQL type intelligently based on the Java name and Java type.