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 ....


Compile-time checking JPA queries


JPA provides several alternatives for querying data. Such alternatives may be classified attending to a variety of criteria, eg, language used (SQL vs JPQL) or whether queries are static (compilation time) or dynamic (execution time). Static queries are defined using annotations @NamedQuery (javax.persistence.NamedQuery) and @NamedQueries (javax.persistence.NamedQueries) in the @Entity class definition itself:         @NamedQuery( name="findAllCustomersWithName", query="SELECT c ...

Read More »

Android Listview with multiple row layout


In many posts we talked extensively about ListView and how to handle it: creating custom adapter or handling user interactions. In this post, I will cover another aspect related to the ListView that was not covered in the past: ListView with multiple row layout. By now we have seen rows having the same layout, anyway it is possible to have ...

Read More »

ADF: Popup, Dialog and Input Components


In this post I would like to focus on a very common use case when we have af:popup containing af:dialog with input components inside. There are a couple of pitfalls that we need to watch out for when implementing this use case. Let’s consider a simple example:             <af:popup id="p1" contentDelivery="lazyUncached">             <af:dialog id="d2" ...

Read More »

Strategies to migrate from an DAO library


In this post I will discuss several strategies to handle the following situation: You’re working on a legacy project that uses a company library with DBOs and DAOs for accessing the database. But the generator for this library is broken and you have to make changes to the DBOs and/or DAOs. Basic cases You will face the following three basic cases, when the database changes: ...

Read More »

But I’m negotiable


I review many emailed job applications each week that include a salary expectation, usually in the form of “seeking $X,000 per year“. Some continue with a phrase that has become trite, not to mention quite costly to job seekers everywhere. “but I’m negotiable” What these candidates are telling us is “I have a target number, but I want you to know in advance that I’m willing to accept less.“ This phrase is ...

Read More »

SQL Tip of the Day: Be Wary of SELECT COUNT(*)


Recently, I’ve encountered this sort of query all over the place at a customer site:                     DECLARE v_var NUMBER(10); BEGIN SELECT COUNT(*) INTO v_var FROM table1 JOIN table2 ON table1.t1_id = table2.t1_id JOIN table3 ON table2.t2_id = table3.t2_id ... WHERE some_predicate; IF (v_var = 1) THEN do_something ELSE do_something_else END IF; ...

Read More »

Java’s Volatile Modifier


A while ago I wrote a Java servlet Filter that loads configuration in its init function (based on a parameter from web.xml). The filter’s configuration is cached in a private field. I set the volatile modifier on the field. When I later checked the company Sonar to see if it found any warnings or issues in the code I was ...

Read More »
Want to take your Java Skills to the next level?
Grab our programming books for FREE!
  • Save time by leveraging our field-tested solutions to common problems.
  • The books cover a wide range of topics, from JPA and JUnit, to JMeter and Android.
  • Each book comes as a standalone guide (with source code provided), so that you use it as reference.
Last Step ...

Where should we send the free eBooks?

Good Work!
To download the books, please verify your email address by following the instructions found on the email we just sent you.