new methods for connect to relational database

28 views
Skip to first unread message

v.yar...@gmail.com

unread,
Jun 5, 2014, 2:40:06 PM6/5/14
to jooq...@googlegroups.com
Hi
I search about new methods for connect to relational database in programing languages. Can you help me?

best regards
vahid

Lukas Eder

unread,
Jun 5, 2014, 2:51:02 PM6/5/14
to jooq...@googlegroups.com
Hello Vahid,

That is a very open-ended question. We can certainly help, but your question will need to be a bit more specific. What exactly are you looking for?

Best,
Lukas


--
You received this message because you are subscribed to the Google Groups "jOOQ User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jooq-user+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

v.yar...@gmail.com

unread,
Jun 11, 2014, 8:54:23 AM6/11/14
to jooq...@googlegroups.com
Dear Lukas

I plan to
document the evolution of  connectivity methods
  to (relation) databases in programming languages ​​(especially Java), and compare these methods . For example , i will know that  why  Java went toward  Hibernate and then went back to  SQL and tools such as  jooq.?
I don't have an
appropriate  point to start  my researches and i requested you for this.

Best,
vahid


Lukas Eder

unread,
Jun 12, 2014, 4:32:12 PM6/12/14
to jooq...@googlegroups.com
Hi Vahid,

That's a very interesting topic, of course!
May I ask who you are writing this for?

We at Data Geekery believe that we have come to know the Java/SQL integration market pretty well, specifically after all the conference talks and talking to thousands of JDBC / Hibernate / jOOQ users, and to other software vendors in our ecosystem.

This is the story we usually tell at conferences (slides here, you may re-use them under the CC BY-SA license: http://www.slideshare.net/DataGeekery/get-back-in-control-of-your-sql-33rddegree):

- JDBC was derived from ODBC in JDK 1.1 in 1997. Both ODBC and JDBC were an awesome abstraction over the hundreds of available SQL dialects and interaction patterns at the time. It was state of the art at the time.
- About at the same time, the ANSI SQLJ standard surfaced this planet (1998) to bring what the C language called Pro*C to the Java ecosystem - preprocessed, embedded SQL in Java. SQLJ was dead from the beginning. In my opinion, this mostly happened because powerful IDEs like JBuilder, Eclipse, and others appeared around at the same time, and they were a poor fit for SQLJ (and vice versa). Besides, SQLJ could only generate a limited subset of standard SQL, and wasn't able to allow for composable, dynamic SQL, only static SQL. More about this here: http://blog.jooq.org/2014/01/03/why-did-sqlj-die
- Then, the dark ages of J2EE started, with EJB 1.0 and 2.0, which made us developers slaves to the enterprise for around 20 years. SQL was hidden behind so-called EntityBeans, which were a major pain to develop and maintain. Most EntityBean implementations still used JDBC, though. Usually, no one disagrees with this assessment.
- Then, in 2001, Gavin King and his fellows thought we need immediate remedy from the EJB hell, and created Hibernate. Still the best ORM today.
- Around at the same time, iBATIS (today MyBatis) was created to provide a completely alternative approach to writing non-embedded SQL in Java. This product is still quite popular given the few features it actually has.
- Then, in 2004-2014, the dark ages of the object-relational impedance mismatch had started, with people simply not believing what Gavin King had always said: "You don't have to use Hibernate for *everything*". Yes. Hibernate (and JPA) is great at doing domain-model centric persistence. Hibernate (and JPA) is bad at querying and bulk updating in relational-model centric applications. More about this rationale here: http://www.hibernate-alternative.com
- Then, in 2009 I have created jOOQ (now owned and commercially distributed by Data Geekery GmbH) because in all that time, no one had really tried to do what was lacking all the time for what we roughly estimate to cover around 20% of the Java market (total 10M developers). Actual *typesafe* embedded SQL in Java. The idea behind jOOQ is the fact that old languages like COBOL and PL/SQL (you may think of them whatever you want) nicely integrated the declarative SQL language into the procedural "host" languages. This is extremely powerful and expressive and we see a big market for this kind of thing in the Java ecosystem
- Hopefully, in the next 1-2 years, jOOQ will evolve into a less proprietary standard, which truly embeds SQL as an external language (not an internal DSL, as today) into Java. Perhaps through compiler plugins or other tricks?

Apart from the above frameworks listed, there are lots of minor ones, of course, with similar ideas to the ones listed above. Most importantly, some APIs that simplify JDBC are popular, like Spring JDBC (JdbcTemplate).

So, long story short, the Java folks have always struggled to accept that SQL is really worth being a first-class citizen. Because of this neglect, we had all this mess over all these years, which we at Data Geekery are now aiming at remedying, at least for those people for whom SQL really matters.

You may obviously get a slightly less biased opinion from someone else :-)

Cheers
Lukas


v.yar...@gmail.com

unread,
Jun 28, 2014, 7:59:01 AM6/28/14
to jooq...@googlegroups.com
Hi Lukas

Thank you for the answer. I am a Computer Science Master Graduate and I'm very interested in knowing new concepts and techniques of computer science. So my research is purely personal.
May I ask another question?
 Why do you say "jooq is open source"? This means that I can change its syntax or libraries or other things? Generally, I don't understand  " open source programming language" concept whereas "open source software" is quite clearly for me.






در پنجشنبه 12 ژوئن 2014، ساعت 12:32:12 (UTC-8)، Lukas Eder نوشته:

Lukas Eder

unread,
Jul 1, 2014, 2:40:02 AM7/1/14
to jooq...@googlegroups.com
Hi Vahid,

2014-06-28 13:59 GMT+02:00 <v.yar...@gmail.com>:
Hi Lukas

Thank you for the answer. I am a Computer Science Master Graduate and I'm very interested in knowing new concepts and techniques of computer science. So my research is purely personal.
May I ask another question?
 Why do you say "jooq is open source"? This means that I can change its syntax or libraries or other things?

Yes, you can modify anything in the jOOQ Open Source Edition under the terms of the Apache Software License 2.0:
 
Generally, I don't understand  " open source programming language" concept whereas "open source software" is quite clearly for me.

There is no difference. 

To learn more about what "Open Source" means, I suggest reading relevant articles on Wikipedia, for instance:

Note that people may understand "Open Source" differently. The ideological notion of "Open Source" wants software to remain "free" (as in freedom: "Libre"). More pragmatic approaches (like our own) think of "Open Source" to be "free" (as in beer: "Gratis"). In fact, jOOQ is something in between "Gratis" and "Libre". The difference is explained here:

Hope this helps,
Lukas

Vahid Yarizade

unread,
Jul 1, 2014, 4:04:54 AM7/1/14
to jooq...@googlegroups.com
Thanks Lukas

I am confused a little ;)
When we say: a software is open source, it means its source code is changeable, But about a programming language such as Ruby, what does it mean? Is its interpreter code changeable? Is its syntax code changeable? Is its libraries changeable? or ...
but I couldn't find a clear and helpful answer:((((

best regards
vahid















--
You received this message because you are subscribed to a topic in the Google Groups "jOOQ User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jooq-user/pAeOoodfTNs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jooq-user+...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Vahid Yarizade, M.Sc. Student
School of Electrical and Computer Eng.(ECE),
Software Eng. Group,
University of Tehran,
Tehran, Iran.

Lukas Eder

unread,
Jul 1, 2014, 4:10:23 AM7/1/14
to jooq...@googlegroups.com
Hi Vahid,

2014-07-01 10:04 GMT+02:00 Vahid Yarizade <v.yar...@gmail.com>:
Thanks Lukas

I am confused a little ;)
When we say: a software is open source, it means its source code is changeable, But about a programming language such as Ruby, what does it mean?

The same
 
Is its interpreter code changeable?

Yes, because the interpreter is... software!
 
Is its syntax code changeable?

Yes, because documentation and the parser are both... software! Well, except the documentation. But that's usually also part of the product.
 
Is its libraries changeable? or ...

Yes, yes, yes.
 
but I couldn't find a clear and helpful answer:((((

Well. This isn't the forum to discuss the general purpose or meaning of things not strictly related to jOOQ. I suggest you ask a (very clear and specific) question on quora.com, about the implications of Open Source in programming languages...

Hope this helps,
Lukas

Vahid Yarizade

unread,
Jul 1, 2014, 5:00:17 AM7/1/14
to jooq...@googlegroups.com
Very very thanks Lukas.


--
You received this message because you are subscribed to a topic in the Google Groups "jOOQ User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jooq-user/pAeOoodfTNs/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jooq-user+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages