JaQu - .Net LINQ for Java JDBC  XML
Índice dos Fóruns » Notícias
Autor Mensagem
eduveks
Virtual Machine Man
[Avatar]

Membro desde: 19/04/2005 07:45:40
Mensagens: 674
Localização: Lisboa - Portugal
Offline

http://www.h2database.com/html/frame.html?jaqu.html&main

What is JaQu

JaQu stands for Java Query and allows to access databases using pure Java. JaQu replaces SQL, JDBC, and O/R frameworks such as Hibernate. JaQu is something like LINQ for Java (LINQ stands for "language integrated query" and is a Microsoft .NET technology). The following JaQu code:



Advantages

Unlike to SQL, JaQu can be easily integrated in Java applications. Because JaQu is pure Java, Javadoc and auto-complete are supported. Type checking is performed by the compiler. JaQu fully protects against SQL injection.
Why in Java?

Most people use Java in their application. Mixing Java and another language (for example Scala or Groovy) in the same application is complicated. It would be required to split the code to access the database and the application code.
Current State

JaQu is not yet stable, and not part of the h2.jar file. However the source code is included in H2, under:

* src/test/org/h2/test/jaqu/* (samples and tests)
* src/tools/org/h2/jaqu/* (framework)

Requirements

JaQu requires Java 1.5. Annotations are not need. Currently, JaQu is only tested with the H2 database engine, however in theory it should work with any database that supports the JDBC API.

http://www.cajuscript.org
http://eduveks.blogspot.com
[Email] [WWW]
paulofafism
JavaChild
[Avatar]

Membro desde: 02/05/2006 15:30:50
Mensagens: 124
Offline

O framework parece ser legal, Mas parece que ele faz o que o hibernate ja faz
TangZero
JavaGuru
[Avatar]

Membro desde: 23/01/2007 16:00:46
Mensagens: 257
Localização: São Paulo
Offline

Isso não passa de uma DSL.
Na Mundo Java de mês, saiu uma matéria explicando a técnica utilizada por essf framework, de encadear chamadas de método.
Não creio que seja revolução. Ainda prefiro seguir a especificação do JPA, e, em alguns casos, usar o JDBC Templates do Spring.

TangZero

SCJP 6 e SCWCD 5



[WWW]
eduveks
Virtual Machine Man
[Avatar]

Membro desde: 19/04/2005 07:45:40
Mensagens: 674
Localização: Lisboa - Portugal
Offline

Sim, só que bem mais simples ao estilo Linq.

Também nada impede de usar o Hibernate e o JaQu juntos, para fazer as querys o JaQu pode ser mais intuitivo e simples.

Mais a respeito:

http://sustainablesoftware.wordpress.com/2008/07/31/jaqu-another-lightweight-sql-interface-for-java/

This message was edited 2 times. Last update was at 01/08/2008 08:41:15


http://www.cajuscript.org
http://eduveks.blogspot.com
[Email] [WWW]
David
JavaEvangelist
[Avatar]

Membro desde: 18/03/2005 13:10:33
Mensagens: 440
Localização: Natal/RN
Offline

Uma DSL? Não seria só uma interface fluente não? Eu ACHO que não podemos chamar isso de DSL...

Edit:
Bem.. Acho que pode sim.. http://fragmental.tw/research-on-dsls/language-oriented-programming-lop/language-adaption/
Shoes, qualquer uso de fluent interface pode ser considerado DSL? Quando seria possível e quando não?

This message was edited 2 times. Last update was at 01/08/2008 09:07:06


David Pereira
Engenheiro de Computação - UFRN
Mestre em Engenharia Elétrica
Doutorando em Engenharia Elétrica
[WWW]
TangZero
JavaGuru
[Avatar]

Membro desde: 23/01/2007 16:00:46
Mensagens: 257
Localização: São Paulo
Offline

David wrote:Uma DSL? Não seria só uma interface fluente não? Eu ACHO que não podemos chamar isso de DSL...

Edit:
Bem.. Acho que pode sim.. http://fragmental.tw/research-on-dsls/language-oriented-programming-lop/language-adaption/
Shoes, qualquer uso de fluent interface pode ser considerado DSL? Quando seria possível e quando não?


Não sou dos mais entedidos disso, mas uma DSL interna pode ser considerada por muitos, uma interface fluente. Acho que esses conceitos não são tão fáceis de se distinguir. Eu mesmo as vezes me pergunto qual é a diferença....

TangZero

SCJP 6 e SCWCD 5



[WWW]
peczenyj
Moderador
[Avatar]

Membro desde: 26/03/2006 23:25:37
Mensagens: 2185
Offline

Hunm... nada haver o que eu falei

This message was edited 1 time. Last update was at 01/08/2008 09:25:31


http://peczenyj.blogspot.com/

'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.'
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 3953
Localização: São Paulo
Offline

Isso tá anos luz de fazer aquilo que o LINQ permite. Cade expression trees? Cade extension methods?

Isso é uma fluent API meia boca p/ acessar banco de dados. LINQ é muito mais que isso.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
eduveks
Virtual Machine Man
[Avatar]

Membro desde: 19/04/2005 07:45:40
Mensagens: 674
Localização: Lisboa - Portugal
Offline

Claro q LINQ é muito mais q isto... mas pelo menos é melhor q nada, e é verdade eu me contento com pouco

http://www.cajuscript.org
http://eduveks.blogspot.com
[Email] [WWW]
Rodrigo.Lima
JavaBaby

Membro desde: 14/07/2006 09:45:21
Mensagens: 93
Offline

louds wrote:Isso tá anos luz de fazer aquilo que o LINQ permite. Cade expression trees? Cade extension methods?

Isso é uma fluent API meia boca p/ acessar banco de dados. LINQ é muito mais que isso.
Isso que é saber dar uma força.
TangZero
JavaGuru
[Avatar]

Membro desde: 23/01/2007 16:00:46
Mensagens: 257
Localização: São Paulo
Offline

Os desenvolvedores do projeto dizem que o Framework nem foi testado com outros Bancos de Dados, somente com o deles.
Poxa, não sei se utilizaria esse cara, nem que fosse para testes. Nem eles mesmos se dão ao trabalhar de testar o treco...
Tudo bem que a idéia é "funfar" com o JDBC em si, mas sabemos como cada banco tem suas peculiaridades!

TangZero

SCJP 6 e SCWCD 5



[WWW]
louds
Moderador
[Avatar]

Membro desde: 29/04/2003 23:09:15
Mensagens: 3953
Localização: São Paulo
Offline

Rodrigo.Lima wrote:
louds wrote:Isso tá anos luz de fazer aquilo que o LINQ permite. Cade expression trees? Cade extension methods?

Isso é uma fluent API meia boca p/ acessar banco de dados. LINQ é muito mais que isso.
Isso que é saber dar uma força.


A questão é que o LINQ for SQL é o recurso menos interessante de todos.

O grande valor tá em coisas como LINQ for objects, PLINQ (Parallel LINQ), expression trees e todo plumbind por traz
que permite escrever coisas como LINQ for NHibernate de maneira razoavelmente fácil.

Acho incrível como a comunidade Java é em geral incapaz de ver além do LINQ for SQL.

http://www.kumpera.net/blog/
http://www.mono-project.com/
"Each individual should work for himself. People will not sacrifice themselves for the company. They come to work at the company to enjoy themselves."
Soichiro Honda
[ICQ]
Rubem Azenha
Forum Spammer
[Avatar]

Membro desde: 28/06/2004 00:10:43
Mensagens: 1568
Localização: São Paulo, SP
Offline

louds, a comunidade .NET em geral também não enxerga muito mais longe do que a comunidade Java no que diz respeito ao LINQ...

http://razenha.wordpress.com/
Melhorando significativamente a performance de aplicações web sem gastar tanto
[WWW]
Rodrigo.Lima
JavaBaby

Membro desde: 14/07/2006 09:45:21
Mensagens: 93
Offline

louds wrote:
Rodrigo.Lima wrote:
louds wrote:Isso tá anos luz de fazer aquilo que o LINQ permite. Cade expression trees? Cade extension methods?

Isso é uma fluent API meia boca p/ acessar banco de dados. LINQ é muito mais que isso.
Isso que é saber dar uma força.


A questão é que o LINQ for SQL é o recurso menos interessante de todos.

O grande valor tá em coisas como LINQ for objects, PLINQ (Parallel LINQ), expression trees e todo plumbind por traz
que permite escrever coisas como LINQ for NHibernate de maneira razoavelmente fácil.

Acho incrível como a comunidade Java é em geral incapaz de ver além do LINQ for SQL.

Concordo contigo, a microsoft está copiando e melhorando várias coisas do java, já está na hora de ter uma coisa parecida com LINQ em java mesmo.

O legal mesmo vai ser o linq to entities, uma especie de hibernate e linq juntos.
windsofhell
Virtual Machine Man

Membro desde: 15/06/2007 08:31:17
Mensagens: 713
Offline


Nao sou de defender microsoft ( mesmo trabalhando com C# ) mas isso precisa de muito feijao com arroz pra fazer 1% do que o LINQ faz hehehe

//Daniel
 
Índice dos Fóruns » Notícias
Ir para:   
Apoiado e desenvolvido por Caelum Cursos Java - Powered by JForum 2.1.8 © JForum Team