awesome-java-books A curated list of awesome Java Books For Beginners Introduction to Java Programming and Data Structures (10th Edition, 2014) Head First Java (2nd Edition, 2005) Advanced Books Think Java (1st Edition, 2016) Effective Java (3rd Edition, 2018) Refactoring: Improving the Design of Existing Code (1st Edition, 1999) Java Concurrency in Practice (1st Edition, 2006) Test Driven: TDD and Acceptance TDD for Java Developers (1st Edition, 2007) Spring / Spring Boot Spring in Action: Covers Spring 4 (4th Edition, 2014) Spring Boot in Action: (1st Edition, 2016) Cloud Native Java (1st Edition, 2017) Spring Microservices in Action (1st Edition, 2017) Learning Spring Boot 2.0 (1st Edition, 2017)