Java: JOOQ persistence framework performance and feed back -


i've stumbled on nice sql builder framework, called jooq. btw, in russian jooq sounds noun meaning "bug" (as insect), "beetle" ;)

if have feedback jooq, it's performance , such, please share. links blogs jooq welcome.

i think should answer here because started using jooq 1 , half months ago have experience it.

i wanted use tool jooq because:

  • orm overkill in current project (distributed calculations platform cluster) since need read , write separate fields db, not complete table rows , of queries complex enough not executed simple , lightweight orms.
  • i wanted syntax autocomplete queries don't need keep whole db in mind
  • i wanted able write queries directly in java compiler check basic query syntax on build.
  • i wanted queries type-safe couldn't accidentally pass variable of 1 type, 1 expected.
  • i wanted sql, wanted convenient , easy use

well, jooq able achieve that. main requirement jooq handle complex enough queries (nested, grouping etc.). fulfilled.

i wanted able run queries using few lines of code possible , able reach jooq fluent api allows jquery-like calls perform selects.

on way using of jooq reported one or 2 bugs , must say, fixed surprisingly fast.

i missed features , again must say, have of them.

what liked much, jooq uses slf4j reporting interesting data it's performance outputting actual queries has built. helped me debugging.

jooq generate java artifacts stored procedures, udfs , updatable recordsets, don't use currently, though.

what's important, jooq transparently supports db2, derby, h2, hsqldb, mysql, oracle, postgresql, sqlite, sql server, sybase sql anywhere. pretty extensive list, think.

jooq has support forum in google groups lukas day , night ready answer stupidest of questions.

jooq supports maven , that's great relief me since java projects maven-based. still miss maven plugin generator, that's not important since running generator piece of cake.

writting queries jooq discovered, became portable because never used mysql-specific feature in code since jooq tries portable possible. can't live such peculiarities, know support sql extensions under way also.

what jooq lack moment point of view?

well, there no fluent api statements other select. complicates code little , makes update/delete statements little more complicated write. think added soon. implemented in 1.5.9! ha! quick me ;)

and 1 more thing. jooq has manual, but... don't know. may don't understand it's structure or architecture... when started using jooq first time, opened 1 page after looking feature need. example, try guess, in jooq manual update , delete statements described, looking @ contents... that's subjective, believe. cannot explain, what's wrong manual point of view. when can, post ticket or 2 ;)

manual not well-navigable since trac has no automatic "here, there , back"-like links.

well, me in moscow (russia) trac pages doesn't open fast reading manual little boring.

manual misses architecture description of jooq contributors. jooq follows design-by-contract principle seems , when wanted learn how feature implemented inside using usual ctrl-click on method name in ide, ended inside dull interface no implementation ;) not i'm smart start improving jooq right away, enjoy understanding how jooq architectured ground up.

it's pity cannot contribute jooq manual. expected in kind of wiki.

what want improve, the way news reported. prefer link manual there or examples how or new feature works.

release notes link in manual roadmap. think, 1 myself tomorrow...

jooq have relatively small community currently, glad report doesn't affect code quality or way new features introduced.

jooq project. stick future projects well. it.


Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -