aboutsummaryrefslogtreecommitdiffstats
path: root/src/site/jaqu_comparison.mkd
diff options
context:
space:
mode:
Diffstat (limited to 'src/site/jaqu_comparison.mkd')
-rw-r--r--src/site/jaqu_comparison.mkd36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/site/jaqu_comparison.mkd b/src/site/jaqu_comparison.mkd
deleted file mode 100644
index 2740517..0000000
--- a/src/site/jaqu_comparison.mkd
+++ /dev/null
@@ -1,36 +0,0 @@
-
-## Comparison to JaQu
-
-This is an overview of the fundamental differences between the original JaQu project and the current featureset of iciql.
-
-<table class="table">
-<tr><th></th><th>Iciql</th><th>JaQu</th></tr>
-<tr><th colspan="3">core</th></tr>
-<tr><td>deployment</td><td>small, discrete library</td><td>depends on H2 database jar file</td></tr>
-<tr><td>databases</td><td>H2, HSQL, Derby, MySQL, PostreSQL, and SQLite</td><td>H2 only</td></tr>
-<tr><td>logging</td><td>console, SLF4J, or custom logging</td><td>console logging</td></tr>
-<tr><td>exceptions</td><td>always includes generated statement in exception, when available</td><td>--</td></tr>
-<tr><td>column mappings</td><td>wildcard queries index result sets by column name</td><td>all result sets built by field index<br/>this can fail for wildcard queries</td></tr>
-<tr><td>savepoints</td><td>bulk operations (insert, update, delete) use savepoints with rollback in the event of failure</td><td>--</td></tr>
-<tr><th colspan="3">syntax and api</th></tr>
-<tr><td>VIEWs</td><td>create readonly views either from a class definition or from a fluent statement</td><td>--</td></tr>
-<tr><td>Foreign Key Constraints</td><td>model classes may be annotated with foreign key constraints</td><td>--</td></tr>
-<tr><td>dynamic queries</td><td>methods and where clauses for dynamic queries that build iciql objects</td><td>--</td></tr>
-<tr><td>DROP</td><td>syntax to drop a table or view</td><td></td></tr>
-<tr><td>BETWEEN</td><td>syntax for specifying a BETWEEN x AND y clause</td><td>--</td></tr>
-<tr><td>(NOT) IN</td><td>syntax (oneOf, noneOf) for specifying a (NOT) IN clause</td><td>--</td></tr>
-<tr><td>compound nested conditions</td><td>WHERE (x = y OR x = z) AND (y = a OR y = b)</td><td>--</td></tr>
-<tr><td>dynamic DAOs</td><td>DAO interfaces with annotated statements may be declared and dynamically generated</td><td>--</td></tr>
-<tr><th colspan="3">types</th></tr>
-<tr><td>primitives</td><td>fully supported</td><td>--</td></tr>
-<tr><td>enums</td><td>fully supported</td><td>--</td></tr>
-<tr><td>DECIMAL(length,scale)</td><td>can specify length/precision and scale</td><td>--</td></tr>
-<tr><td>BOOLEAN</td><td>flexible mapping of boolean as bool, varchar, or int</td><td>--</td></tr>
-<tr><td>BLOB</td><td>partially supported <em>(can not be used in a WHERE clause)</em></td><td>--</td></tr>
-<tr><td>Custom</td><td>partially supported <em>uses custom-defined data type adapter (can not be used in a WHERE clause)</em></td><td>--</td></tr>
-<tr><td>UUID</td><td>fully supported <em>(H2 only)</em> </td><td>--</td></tr>
-<tr><th colspan="3">configuration</th></tr>
-<tr><td>DEFAULT values</td><td>set from annotation, <em>default object values</em>, or Define.defaultValue()</td><td>set from annotations</td></tr>
-<tr><td>Interface Configuration<br/>Mapped Fields</td><td><em>all fields</em> are mapped regardless of scope<br/>fields are ignored by annotating with @IQIgnore</td><td><em>all public fields</em> are mapped<br/>fields are ignored by reducing their scope</td></tr>
-<tr><td>Index names</td><td>can be set</td><td>--</td></tr>
-</table>