Take control of your development databases evolution

So you learned how to setup a Spring Boot project that supports jOOQ in this post and then created a Docker container on your local host that provides you with an Oracle Database instance that you’re ready to use in your project but the instance doesn’t have any tables, data or procedures yet.

You could login into the database via SQL*Plus and create tables manually. And so would your colleague on her machine.

It doesn’t matter if you use an ORM or a code generator at this point, the day you’re gonna move to your production database, stuff will break. One of your team forgot to apply his scripts to production and you are screwed. Either your JPA mappings are broken, SQL queries fail or jOOQs generated code doesn’t match the database.

In this part of the series you’ll learn how to solve this challenge and which workflow we use for database centric applications with jOOQ.

Content

  1. Database migrations with Flyway and Maven
  2. Generation of a Java based database schema
  3. Database migrations revised
  4. Summary

Read the complete article »

| Comments (2) »

31-Oct-16



Database centric applications with Spring Boot and jOOQ

Abstract

As the german conference DOAG K+A is approaching very fast, I have to finalize my talk. As I prepared my demo already several months ago (on the one hand good, it’s done, on the other hand bad, I have to rehearse it), I might as well write about it.

This is gonna be a serious of posts that will provide one solution on how to do advanced reporting using jOOQ and basically mapping queries on HTTP endpoints with Spring Boot. We also gonna add a nice frontend to the mix based on Oracle JET.

I used NetBeans throughout the demo. It’s a highly versatile IDE that not only helped me a lot creating the buildfile for maven, but also supports me in managing my Oracle Datebase inside a Docker container.

There will be two “bonus” topics: Creating an Oracle Database inside a Docker container and using the Oracle Maven repositories for an “original” copy of the Oracle JDBC driver.

Be aware that some things maybe feels very simple to you if you are an experienced Spring Boot developer, but remember that this demo is developed for an audience that probably has little knowledge of Spring Boot or even Java.

As I’m gonna add posts to this series, I’ll push the commits to this repository: michael-simons/DOAG2016, planing to have it fully populated by the end of November.

Content

  1. Part 1: Database centric applications with Spring Boot and jOOQ (this post)
  2. Part 2: Create a Oracle Database Docker container for your Spring Boot + jOOQ application
  3. Part 3: Take control of your development databases evolution
  4. Part 4: An HTTP api for analytic queries
  5. Part 5: Oracle JET: JavaScript components for mere mortals?

Read the complete article »

| Comments (7) »

28-Oct-16


NetBeans Dream Team and more

The last month was quite a ride. Sometimes I think my life has never been better. So many nice and great people in my life, its hard to believe and I am really grateful.

First of all, thanks to my company, ENERKO Informatik for giving me the opportunities to do this stuff. I really need a place on that site to write more stuff some time soon.

NetBeans Dream Team

dream team Geertjan approached me some weeks ago in the name of the NetBeans Dream Team if I want to be a part of it. What a question! Its an honor to be part of such a great open source movement.

This was the announcement last Friday: Seven New NetBeans Dream Team Members. Look at the other 6 people: Attila Kelemen who created the Gradle support and Bruno Flávio, engaged in Groovy as well as in Grails (which is by the way, also Spring Based… I should really have a look at v3 some time).

JPA modeler by Gaurav Gupta surely isn’t only useful for Java EE but also if you use JPA / Hibernate stand alone.

We also have Emmanuel Hugonnet and Leonardo Zanivan on board who actively engage in community, organize NetBean events and more.

You even can get a NetBeans certification, just follow Ryan Cupraks guide.

Hibernate community blog

Vlad Mihalcea, author of High-Performance Java Persistence started a series of interviews on In relation to, the Hibernate community blog.

The first interview was with Petar Tahchiev who I met at Spring I/O earlier this year. Petar is a data geek and founder of the Nemesis platform.

Yesterday, Vlad published my interview, have a look: Meet Michael Simons.

Publications

I published my article about “basics” in German and English on JAXEnter, have a look:

JUG Alert: Über JUG Treffen für Anfänger und die JUG Kaiserslautern im Porträt

JUGs – Beginner or rock-star meetup?

Having an open environment for people to meet and discuss is in my opinion as much as important as having a free and open source IDE. Thanks Dominik for the opportunity to publish this!

Foto for the article: “Dream Team” by Thomas Hawk.

| Comments (1) »

22-Oct-16