Return-Path: Delivered-To: apmail-db-commons-dev-archive@www.apache.org Received: (qmail 37381 invoked from network); 18 Jan 2004 17:33:26 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 18 Jan 2004 17:33:26 -0000 Received: (qmail 45012 invoked by uid 500); 18 Jan 2004 17:33:19 -0000 Delivered-To: apmail-db-commons-dev-archive@db.apache.org Received: (qmail 44994 invoked by uid 500); 18 Jan 2004 17:33:18 -0000 Mailing-List: contact commons-dev-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: list-id: "DB Commons Developers List" reply-to: "DB Commons Developers List" Delivered-To: mailing list commons-dev@db.apache.org Received: (qmail 44984 invoked from network); 18 Jan 2004 17:33:18 -0000 Received: from unknown (HELO mailout06.sul.t-online.com) (194.25.134.19) by daedalus.apache.org with SMTP; 18 Jan 2004 17:33:18 -0000 Received: from fwd00.aul.t-online.de by mailout06.sul.t-online.com with smtp id 1AiGnZ-0003E0-02; Sun, 18 Jan 2004 18:33:21 +0100 Received: from t-online.de (rPLGJyZFYe3inu6-x8e63ljGmRMmgFyMNVX1IMhg1fPv6H9pLynhUj@[217.84.183.92]) by fwd00.sul.t-online.com with esmtp id 1AiGnD-1Agxai0; Sun, 18 Jan 2004 18:32:59 +0100 Message-ID: <400AC353.4060607@t-online.de> Date: Sun, 18 Jan 2004 18:33:07 +0100 From: Oliver.Heger@t-online.de (Oliver Heger) User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5) Gecko/20031007 X-Accept-Language: en-us, en MIME-Version: 1.0 To: commons-dev@db.apache.org Subject: new project question References: <400961B1.9080001@t-online.de> In-Reply-To: <400961B1.9080001@t-online.de> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Seen: false X-ID: rPLGJyZFYe3inu6-x8e63ljGmRMmgFyMNVX1IMhg1fPv6H9pLynhUj X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N This posting was originally sent to the Jakarta commons-dev list. The people there pointed me to the Apache DB project. Oliver Heger wrote: > Hi all, > > I am working on a SQL generator library and would like to donate it to > an open source community. I think it would fit into Jakarta Commons. > Here is some information about it: > > The library was part of a view framework for web applications. It can > generate SELECT statements to retrieve data. The single parts of a > SELECT query are represented as objects that can be plugged together > (e.g. fields to be retrieved, conditions). Finally a renderer > processes this object tree and generates SQL code. This is the list of > the goals that are to be achieved: > > - Hiding the complex syntax of SQL queries by providing a high level > API to construct them. > > - Improving performance over naive programming by consequent usage of > prepared statements with placeholders where possible. > > - Providing mapping facilities between logic names of (bean) > properties and database column names. > > - Providing (a certain level of) database independency by supporting > different renderers that can be customized to specific SQL dialects. > > - Persistence of database queries in different storages (e.g. XML > files, in a database, ...) > > - Supporting dynamic query generation, e.g. if columns from different > database tables are involved, the correct join conditions can be > generated automatically > > - Easy extensibility: just implement your own query part classes > > Please let me know if there is some interest in this code. If not, > what other options do I have to make it open source? > > Thanks! > Oliver > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org > For additional commands, e-mail: commons-dev-help@jakarta.apache.org > > In the meantime I found out that there is surely some overlapping with existing code in DB, e.g. the Criteria in Torque. But I suppose the goals are a bit different (so an advantage of this library may be that it is independent of a specific persistence engine). Maybe there is enough space for a coexistence at first and later doublicate code can be refactored? Thanks! Oliver