A procedural language combined with SQL can do miracles in terms of productiveness, performance and expressivity. In this article, we'll see later on, how we can achieve the same with SQL (and PL/SQL) in Java, using jOOQ, which offers much more functionality than Oracle's own now desupported JPublisher. But first, a little bit of history... … Continue reading Access PL/SQL Procedures From Java with jOOQ, a JPublisher Alternative
10 Things You Didn’t Know About Java
So, you've been working with Java since the very beginning? Remember the days when it was called "Oak", when OO was still a hot topic, when C++ folks thought that Java had no chance, when Applets were still a thing? I bet that you didn't know at least half of the following things. Let's start … Continue reading 10 Things You Didn’t Know About Java
A RESTful JDBC HTTP Server built on top of jOOQ
The jOOQ ecosystem and community is continually growing. We're personally always thrilled to see other Open Source projects built on top of jOOQ. Today, we're very happy to introduce you to a very interesting approach at combining REST and RDBMS by Björn Harrtell. Björn Harrtell is a swedish programmer since childhood. He is usually busy … Continue reading A RESTful JDBC HTTP Server built on top of jOOQ
Let’s Stream a Map in Java 8 with jOOλ
I wanted to find an easy way to stream a Map in Java 8. Guess what? There isn't! What I would've expected for convenience is the following method: public interface Map<K, V> { default Stream<Entry<K, V>> stream() { return entrySet().stream(); } } But there's no such method. There are probably a variety of reasons why … Continue reading Let’s Stream a Map in Java 8 with jOOλ
Stop Claiming that you’re Using a Schemaless Database
One of MongoDB's arguments when evangelising MongoDB is the fact that MongoDB is a "schemaless" database: Why Schemaless?MongoDB is a JSON-style data store. The documents stored in the database can have varying sets of fields, with different types for each field. And that's true. But it doesn't mean that there is no schema. There are … Continue reading Stop Claiming that you’re Using a Schemaless Database
The dreaded DefaultAbstractHelperImpl
A while ago, we have published this fun game we like to call Spring API Bingo. It is a tribute and flattery to Spring's immense creativeness when forming meaningful class names like FactoryAdvisorAdapterHandlerLoader ContainerPreTranslatorInfoDisposable BeanFactoryDestinationResolver LocalPersistenceManagerFactoryBean Two of the above classes actually exist. Can you spot them? If no, play Spring API Bingo! Clearly, the … Continue reading The dreaded DefaultAbstractHelperImpl
Don’t Miss out on Writing Java 8 SQL One-Liners with jOOλ or jOOQ
More and more people are catching up with the latest update to our platform by adopting functional programming also for their businesses. At Data Geekery, we're using Java 8 for our jOOQ integration tests, as using the new Streams API with lambda expressions makes generating ad-hoc test data so much easier. However, we don't feel … Continue reading Don’t Miss out on Writing Java 8 SQL One-Liners with jOOλ or jOOQ
The Caveats of Dual-Licensing
We've been in business for more than one year now with our dual-licensing strategy for jOOQ. While this strategy has worked very well for us, it has also been a bit of a challenge for some of our customers. Today, we're going to show you what caveats of dual-licensing we've run into. Our dual-licensing strategy … Continue reading The Caveats of Dual-Licensing
Using Your RDBMS for Messaging is Totally OK
Controversial database topics are a guaranteed success on reddit, because everyone has an opinion on those topics. More importantly, many people have a dogmatic opinion, which always triggers more debate than pragmatism. So, recently, I posted a link to an older article titled The Database As Queue Anti-Pattern by Mike Hadlow, and it got decent … Continue reading Using Your RDBMS for Messaging is Totally OK
Asynchronous SQL Execution with jOOQ and Java 8’s CompletableFuture
Reactive programming is the new buzzword, which essentially just means asynchronous programming or messaging. Fact is that functional syntax greatly helps with structuring asynchronous execution chains, and today, we'll see how we can do this in Java 8 using jOOQ and the new CompletableFuture API. In fact, things are quite simple: // Initiate an asynchronous … Continue reading Asynchronous SQL Execution with jOOQ and Java 8’s CompletableFuture
