Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!

1. JPA Mini Book

2. JVM Troubleshooting Guide

3. JUnit Tutorial for Unit Testing

4. Java Annotations Tutorial

5. Java Interview Questions

and many more ....

 

jOOQ vs. Hibernate: When to Choose Which

jboss-hibernate-logo

Hibernate has become a de-facto standard in the Java ecosystem, and after the fact, also an actual JavaEE standard implementation if standards matter to you, and if you put the JCP on the same level with ISO, ANSI, IEEE, etc. This article does not intended to discuss standards, but visions. Hibernate shares JPA’s vision of ORM. jOOQ shares SQL’s vision ...

Read More »

Creating a MongoDB Capped Collection in Java

mongodb-logo

In MongoDB, it’s possible to preserve the insertion order of documents into a collection in a circular fashion. These types of collections are called Capped Collections in MongoDB. The MongoDB documentation describes Capped Collections: “Capped collections are fixed-size collections that support high-throughput operations that insert, retrieve, and delete documents based on insertion order. Capped collections work in a way similar ...

Read More »

Enumerating @NamedQuery within @NamedQueries

java-interview-questions-answers

Introduction If you’re a Java developer using JPA, chances are that you’ve declared one or more @NamedQuery objects on your entities. To declare a @NamedQuery on a class, the class must simply be annotated with the name of the query and its JPQL, such as: @Entity @NamedQuery(name = "findAllProjects", query = "select p from Project p order by p.id") public ...

Read More »

A Non-Blocking Benchmark

software-development-2-logo

A couple of weeks ago I asked the question “Why non-blocking?”. And I didn’t reach a definitive answer, although it seemed that writing non-blocking code is not the better option – it’s not supposed to be faster or have higher throughput, even though conventional wisdom says it should. So, leaving behind the theoretical questions, I decided to do a benchmark. ...

Read More »

Functional Interfaces

java-logo

Table Of Contents 1. Introduction 2. Justification 3. Lambda Expressions 4. Predicate<T> 5. BiPredicate<T,U> 6. Function<T,R> 7. BiFunction<T,U,R> 8. Consumer<T> 9. BiConsumer<T,U> 10. Supplier<T> 11. UnaryOperator<T> 12. BinaryOperator<T> 1. Introduction Functional interfaces are a powerful mechanism provided by Java 8 to give us the possibility to pass functions as parameters to other methods. Actually, this option already existed on previous ...

Read More »

Testing Interface Invariants

software-development-2-logo

Today’s article is something a little special. It’s the first article where I use code from my current personal project for examples. You will be getting “real world” examples and not silly, made-up examples like my Scientist and Pen example in my factories article. My Project Because of this, I’m going to make a quick introduction to what the project ...

Read More »

Making Refactoring Work

software-development-2-logo

A recent academic study raises some questions about how useful and how important refactoring really is. The researchers found that refactoring didn’t seem to make code measurably easier to understand or change, or even measurably cleaner (measured by cyclomatic complexity, depth of inheritance, class coupling or lines of code). But as other people have discussed, this study is deeply flawed. ...

Read More »

User Story Guidelines

agile-logo

Disclaimer: This post was extracted from an internal Codurance document used to help our apprentices to learn how we work. We all understand that each project is different and that by no means we can apply exactly the same techniques and practices everywhere. However, the text below serves not only as a foundation but also as a guideline for all ...

Read More »

Creating Fakes in Go with Channels

software-development-2-logo

Fakes are a common testing technique that involve creating a bare implementation of an interface that you can use in testing. They usually allow you to check how they were used so you can ensure the behavior of the object under test. Normally, fakes have storage and retrieval methods, but in this post we’re going to explore using Go’s channels ...

Read More »

Displaying Paths in Ant

apache-ant-logo

In the blog posts Java and Ant Properties Refresher and Ant <echoproperties /> Task, I wrote about how being able to see how properties are seen by an Ant build can be helpful in understanding that build better. It is often the case that it’d also be valuable to see various paths used in the build as the build sees ...

Read More »
Do you want to know how to develop your skillset and become a ...

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!
Get ready to Rock!
To download the books, please verify your email address by following the instructions found on the email we just sent you.

THANK YOU!

Close