- I. Guidance & Roadmap
- II. Books & Documentations
- III. Source Repositories
- IV. Blog & Community
- V. Others
beginner
- Core Java (11th, 2018) Volume I Fundamentals by S, Horstmann
- The Java™ Tutorials
- Head First Java (2nd, 2009) by Kathy Sierra
- Java 8 in Action (2014) by Raoul-Gabriel Urma, Mario Fusco
- Java: The Complete Reference (11th) by Schildt, Herbert
Master
- Java SE 8 Documentation
https://www.oracle.com/technetwork/java/javase/documentation/index.html https://docs.oracle.com/javase/8/ - The Java® Language Specification Java SE 8 Edition - doc
- Effective Java (2nd, 2008) by Joshua Bloch
- Thinking in Java (4th, 2006) by Eckel, Bruce
- On Java 8 by Bruce Eckel
- Modern Java in Action (JDK9) (2nd, 2018) by Raoul-Gabriel Urma, Mario Fusco
- Java 9 Modularity: Patterns and Practices for Developing Maintainable Applications by Mak, Sander
- Modern Java Recipes: Simple Solutions to Difficult Problems in Java 8 and 9 by Kousen, Ken
- Java in a Nutshell by David Flanagan
- Java Puzzlers by Joshua Bloch, Neal Gafter
- 阿里巴巴Java开发手册 by 杨冠宝
- 码出高效:Java开发手册 by 杨冠宝
Concurrency Programming
- Java Concurrency in Practice (2006) by Goetz, Brian
- Concurrent Programming in Java: Design Principles and Patterns (2nd, 1999) by Doug Lea
- Java多线程编程实战指南-核心篇 (2017) by 黄文海 (9.8)
- 图解Java多线程设计模式 (2017) by [日] 结城浩 (8.5)
- Java多线程编程实战指南-设计模式篇 (2015) by 黄文海 (8.5)
- 实战Java高并发程序设计 (2015) by 葛一鸣, 郭超 (8.3)
- Java并发编程的艺术 (2015) by 方腾飞, 魏鹏, 程晓明 (7.3)
- Seven Concurrency Models in Seven Weeks: When Threads Unravel (2014) by Paul Butcher
JVM Optimization
- The Java® Virtual Machine Specification Java SE 7 Edition - doc
- Java Performance: The Definitive Guide by Oaks, Scott [4.38]
- Java Performance by Hunt, Charlie [4.12]
- Optimizing Java: Practical Techniques for Improving Jvm Application Performance by Benjamin J. Evans, James Gough [4.37]
- Java Performance Companion by Hunt, Charlie [3.77]
- Java Performance Tuning by Shirazi, Jack [3.56]
- Optimizing Java: Practical Techniques for Improving Jvm Application Performance by Evans, Benjamin J.
- Inside the Java 2 Virtual Machine (2nd, 2000) by Bill Venners
- The Garbage Collection Handbook: The Art of Automatic Memory Management by Jones, Richard
- 深入理解Java虚拟机(第2版) : JVM高级特性与最佳实践 (2013) by 周志明 (8.9)
- Java程序性能优化-让你的Java程序更快、更稳定 (2012) by 葛一鸣 (8.1)
- 实战Java虚拟机 (2015) by 葛一鸣 (8.1)
- 垃圾回收的算法与实现 (2016) by 中村成洋 (8.2)
Reactive Programming
- Reactive Programming with RxJava: Creating Asynchronous, Event-Based Applications by Ben Christensen and Tomasz Nurkiewicz
- Reactive Programming With Java 9: Build Asynchronous Applications with Rx.Java 2.0, Flow API and Spring WebFlux by Tejaswini Mandar Jog
- Learning Reactive Programming with Java 8 by Nickolay Tsvetinov
- Reactive Web Applications: Covers Play, Akka, and Reactive Streams by Manuel Bernhardt
Utility Library
JSON, XML, Email, Logging, Datetime, IO.
Design Patterns
- Head First Object-Oriented Analysis and Design by McLaughlin, Brett
- Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm
- HTTP: The Definitive Guide by David Gourley, Brian Totty
- RFC 2616 - Hypertext Transfer Protocol -- HTTP/1.1
- 深入理解Nginx by 陶辉
- How Tomcat Works: A Guide to Developing Your Own Java Servlet Container by Budi Kurniawan, Paul Deck
Reference Information Security - Web Security
Reference Web Frontend Resource
Servlet
- Java Servlet Specification Version 4.0 - doc
- Java Servet API
- Java Servlet Documentation - doc
- Head First Servlets and JSP (2nd, 2008) by Bryan Basham
JDBC
- Java JDBC API
- JDBC Home Page - Java SE Technologies - Database - doc
- JDBC Basics Tutorial
- MySQL Connector/J 5.1 Developer Guide
- JDBC Database Access with Java: A Tutorial and Annotated Reference by Graham Hamilton and Rick Cattell
- JDBC API Tutorial and Reference by Maydene Fisher
JDBC Connection Pool
Java EE
- Java EE Documentation - doc
- Expert One-on-One J2EE Design and Development by Rod Johnson
- Professional Java EE Design Patterns by Murat Yener, Alex Theedom
- Java EE 7 Essentials by Arun Gupta
- Core J2EE Patterns: Best Practices and Design Strategies by Dan Malks, Deepak Alur, and John Crupi (J2EE核心模式)
- 深入分析Java Web技术内幕 by 许令波
- Restful Java with Jax-RS by Bill Burke
- High-Performance Java Persistence by Vlad Mihalcea
Web Frameworks
- Spring Framework Reference Documentation 3.2.18 - doc
- Spring Framework Current Documentation - doc
- Spring Boot Current Documentation - doc
- Spring in Action by Craig Walls
- Expert One-On-One J2EE without EJB by Rod Johnson. It explains the why behind spring as well as the how to use it.
- Spring 5 Recipes: A Problem-Solution Approach
- Spring 揭秘 (2009) by 王福强
- Spring 3.x企业应用开发实战 by 陈雄华
- Spring Boot in Action by Craig Walls
- Learning Spring Boot 2.0
Cloud
- Cloud Native Java: Designing Resilient Systems with Spring Boot, Spring Cloud, and Cloud Foundry by Josh Long, Kenny Bastani
- Spring Microservices in Action by John Carnell
Tutorials
Persistence Framework
- MyBatis Documentation
- Java Persistence with Hibernate: Revised Edition of Hibernate in Action by Bauer, Christian
- Unix Network Programming by W.Richard Stevens
- TCP/IP Sockets in Java: Practical Guide for Programmers by Kenneth L. Calvert, Michael J. Donahoo
- Java Network Programming by Harold, Elliotte Rusty [3.57, 113]
- Java NIO by Hitchens, Ron [3.72, 18]
- Netty in Action by Maurer, Norman
- Netty权威指南 by 李林锋
Reference CS Advanced Domains Resources - Database Systems and Data Storage
Reference Software Development and Engineering
Reference CS Advanced Domains Resources - Distributed Systems
Java Libraries
- Google Guava Google Core Libraries for Java, 开源的Java库,谷歌很多项目使用它的很多核心库。这个库是为了方便编码,并减少编码错误。
- comons-lang 一个被大量使用的工具包,都是一个一个的方法,适合新手学习。
Web Frameworks
-
Flyweight
- blade Lightning fast and elegant mvc framework for Java8
- Google Guice a lightweight dependency injection framework
- jfinal JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!
- tiny-spring
- AisMVC 一款仿SpringMVC轻便的mvc开发框架
ORM Frameworks
- mybatis-3 MyBatis SQL mapper framework for Java
- hibernate-orm Hibernate's core Object/Relational Mapping functionality
Network Frameworks
RPC Frameworks
Utilities
for JSON
for Build
for Deploy
for Test
for HTTP Client
Others
Web Server
Caching System
Distributed Log
Database Management System
Operating System
Management system
- BootDo 基于 Springboot 和 Mybatis 的后台管理系统
- Guns 基于SpringBoot,更简洁的后台管理系统
- FEBS 基于 Spring Boot 的权限管理系统
- cms content management system
- crud 万能快速原型系统
- JeePlus
- hope-plus
- MCMS Java快速开发平台
- funiture 企业级权限管理系统
Shop System
IM
Social
- symphony 现代化社区(论坛/BBS/社交网络/博客)平台
Others
- drp DRP系统
- social-sdk 社交平台的接口的Java库
- beauty_ssm_cluster 对”优雅的SSM框架“进行完善
Tutorials
- spring-boot-examples
- tutorials The "REST With Spring" Course
Personal Blog
- Peter Norvig
- JOEL ON SOFTWARE
- CODING HORROR
- BlogsDope
- Techie Delight
- visitorpanel
- SCOTT HANSELMAN
- sanwebcorner
- 酷壳 - 左耳朵耗子
- 阮一峰的网络日志
- 云风的 BLOG
- 小胡子哥博客
Community
- Stack Overflow
- ibm developerworkers
- InfoQ
Social
- Hacker News
- Medium
- V2EX
- 1point3acres
Knowledge Summary
- Java工程师成神之路 - github
- advanced-java - github Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务等领域知识。
- JavaGuide - github 涵盖大部分Java程序员所需要掌握的核心知识。
- CS-Notes - github 技术面试必备基础知识。
- stackoverflow-java-top-qa & stackoverflow上Java相关回答整理翻译
- Front-end-tutorial - github 前端回忆录
Resource Collection
- Awesome Java - A curated list of awesome Java frameworks, libraries and software
- be-a-professional-programmer - github 成为专业程序员路上用到的各种优秀资料、神器及框架
- awesome-java - github awesome frameworks, libraries and software
- awesome-java-cn - github Java资源大全中文版,包括开发库、开发工具
- links - github Web 开发相关资源、网站、工具推荐
Online Course Website
- BEST PROGRAMMING LANGUAGE FOR ME
- CLASS CENTRAL
- COURSERA
- UDACITY
- edx
- DATACAMP
- ALISON
- MIT OPENCOURSEWARE
- CODECADEMY
- NPTEL
Others
- GitHub Rank GitHub 排行榜
- COLLEGESTASH - online course
- engineering-blogs
- 11 best web development blogs you should be reading right now
- HackSource– 18,510 programming tutorials for developers
- java-bible - github 技术摘要
[1] What are the best programming blogs? - Quora
--END--