Skip to content

Latest commit

 

History

History
451 lines (287 loc) · 16.6 KB

java-resources.md

File metadata and controls

451 lines (287 loc) · 16.6 KB

Resources of Java

Content

  • I. Guidance & Roadmap
  • II. Books & Documentations
  • III. Source Repositories
  • IV. Blog & Community
  • V. Others

I. Guidance & Roadmap

II. Books & Documentations

Java SE

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

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

Web Development

Protocols

Web Servers

  • 深入理解Nginx by 陶辉
  • How Tomcat Works: A Guide to Developing Your Own Java Servlet Container by Budi Kurniawan, Paul Deck

Web Security

Reference Information Security - Web Security

Web Frontend

Reference Web Frontend Resource

Java Web

Servlet

JDBC

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

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

Network Programming

TCP/IP

  • Unix Network Programming by W.Richard Stevens

Socket

  • 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]

NIO

  • Java NIO by Hitchens, Ron [3.72, 18]
  • Netty in Action by Maurer, Norman
  • Netty权威指南 by 李林锋

Data Storage

Reference CS Advanced Domains Resources - Database Systems and Data Storage

DevOps & Test & Tools

Reference Software Development and Engineering

Distributed System

Reference CS Advanced Domains Resources - Distributed Systems

III. Source Repositories

Java Libraries

  • Google Guava Google Core Libraries for Java, 开源的Java库,谷歌很多项目使用它的很多核心库。这个库是为了方便编码,并减少编码错误。
  • comons-lang 一个被大量使用的工具包,都是一个一个的方法,适合新手学习。

Web Frameworks

  • spring-framework

  • spring-boot

  • 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

Tutorials

IV. Blog & Community

Personal Blog

Community

Social

  • Reddit
  • Hacker News
  • Medium
  • V2EX
  • 1point3acres

V. Others

Knowledge Summary

Resource Collection

Online Course Website

Others

References

[1] What are the best programming blogs? - Quora

--END--