# Java-Book **Repository Path**: oneeyear/Java-Book ## Basic Information - **Project Name**: Java-Book - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-10-16 - **Last Updated**: 2021-11-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Java学习资料整理 [![博客园](https://img.shields.io/badge/%E5%8D%9A%E5%AE%A2%E5%9B%AD-%E5%86%AC%E7%9C%A0%E7%9A%84%E5%B1%B1%E8%B0%B7-brightgreen.svg)](https://www.cnblogs.com/lgjlife/) ## 框架 * [Arthas:Alibaba开源的Java诊断工具,在线问题排查](https://github.com/alibaba/arthas/blob/master/README_CN.md) * [Dubbo:阿里分布式框架](https://github.com/apache/incubator-dubbo)/[官网](http://dubbo.apache.org/zh-cn/) * [Dubbo-admin:dubbo运维监控平台](https://github.com/apache/incubator-dubbo-admin/blob/develop/README_ZH.md)dubbo监控 * [Elasticsearch-head:el监控平台](https://github.com/mobz/elasticsearch-head)/[官网](https://www.elastic.co/) * [Elasticsearch:实时搜索](https://github.com/elastic/elasticsearch)/[官网](https://www.elastic.co/) * [FastDFS:分布式文件系统](https://github.com/happyfish100) * [Fescar:阿里开源分布式解决方案](https://github.com/seata) * [Jedis:redis JAVA客户端](https://github.com/xetorthio/jedis) * [Kafka:消息中间件](https://github.com/apache/kafka)/[官网](http://kafka.apache.org/) * [Mybatis:数据层ORM框架](https://github.com/mybatis/mybatis-3)/[官网](https://blog.mybatis.org/) * [Mybatis Plus:对Mybatis进一步封装](https://github.com/baomidou/mybatis-plus)/[官网](https://mp.baomidou.com/) * [Mycat:数据库中间件](https://github.com/MyCATApache)/[官网](http://www.mycat.io/) * [Netty:NIO通信框架](https://github.com/netty/netty)/[官网](https://netty.io/) * [Nginx:高性能分布式缓存](https://github.com/nginx/nginx/tree/release-1.15.12)/[官网](http://nginx.org/) * [Quartz分布式定时任务](https://github.com/quartz-scheduler/quartz)/[官网](http://www.quartz-scheduler.org/) * [Rabbitmq:消息中间件](https://github.com/rabbitmq)/[官网](https://www.rabbitmq.com/) * [Rocketmq:消息中间件](https://github.com/apache/rocketmq)/[官网](http://rocketmq.apache.org/) * [Redis:高性能缓存](https://github.com/antirez/redis)/[官网](https://redis.io/) * [Redisson:Redis客户端,集成分布式锁](https://github.com/redisson/redisson)/[官网](https://redisson.org/) * [Redis布隆过滤器](https://github.com/RedisBloom/RedisBloom) * [Springboot:Spring项目快速开发框架](https://github.com/spring-projects/spring-boot)/[官网](https://spring.io/projects/spring-boot/) * [SpringCloud](https://github.com/spring-cloud) * [spring-framework](https://github.com/spring-projects/spring-framework)/[官网](https://spring.io/projects/spring-boot/) * [Spring-data-elaticsearch:el Spring客户端](https://github.com/spring-projects/spring-data-elasticsearch)/[官网](https://spring.io/projects/spring-data-elasticsearch) * [Shiro:认证登录框架](https://github.com/apache/shiro)/[官网](http://shiro.apache.org/) * [tx-lcn:分布式事务解决](https://github.com/codingapi/tx-lcn)/[官网](https://www.txlcn.org/zh-cn/) * [Zookeeper:分布式协调系统](https://github.com/apache/zookeeper)/[官网](http://zookeeper.apache.org/) ## 收藏 * [《MyBatis 从入门到精通》配套仓库](https://github.com/mybatis-book/book) * [Dockerfile Maven](https://github.com/spotify/dockerfile-maven) * [FastDFS_Client:fastdfs Java客户端](https://github.com/tobato/FastDFS_Client) * [美团Leaf分布式ID生成方案](https://github.com/Meituan-Dianping/Leaf)/[介绍](https://tech.meituan.com/2019/03/07/open-source-project-leaf.html) # 技术社区 * [博客园](https://www.cnblogs.com/) * [开源中国](https://www.oschina.net/) * [stackoverflow](https://stackoverflow.com/) * [CSDN](https://www.csdn.net/) * [掘金](https://juejin.im/) * [技术文档下载](http://www.java1234.com/) * [leetcode](https://leetcode.com/) * [牛客网](https://www.nowcoder.com/) * [思否](https://segmentfault.com/) # 书籍推荐 ## 计算机基础 * 计算机科学导论 --(如果不是计算机科班的,应先看看计算机基础,了解一些基本概念,有助于之后的学习) * 计算机操作系统 * 操作系统原理及应用(Linux) ## LINUX * Linux命令行与shell脚本编程大全 --(常用命令的介绍和脚本编写) * Unix环境高级编程 --(这三本书主要还是看看Linux下的IO模型,select 和epoll的区别,后面有的框架会涉及到这些内容,比如netty) * Unix网络编程 * Linux 系统编程手册 ## Java 基础和进阶 * 疯狂Java讲义 * Java 核心基础卷1/2 * Java编程思想 * Java 8实战 * jls11 * Effective Java --(编写代码过程中的一些最佳实践,注意事项。现在已经出第二版了,增加了lambada的内容) * JAVA网络编程 第4版 --(BIO socket编程,现在基本不用了) ## 性能优化 * Java性能优化权威指南 * Java性能权威指南 * Java性能调优指南 * Java程序性能优化 ## Java 并发编程 * Java多线程编程核心技术 * Java多线程编程实战指南 * 实战Java高并发程序设计 * Java 并发编程实战   * Java并发编程的艺术 ## 设计模式 * 设计模式之禅 --(个人觉得把设计模式讲的比较明白的书籍) ## 虚拟机 * 深入理解Java虚拟机(第二版)--(理解JVM的经典书籍,基于1.7,因此有些概念不适用最新版本,比如永久代已经替换为元空间) * jvms11 * hotspot * 虚拟机参数 ## Redis * Redis 入门指南 * Redis实战中文版 * Redis设计与实现 * 深入分布式缓存 从原理到实践 * Redis深度历险:核心原理和应用实践 * redis设计与实现(第二版) ## MySQL * MySQL数据库应用从入门到精通 * sql学习指南 * 数据库索引设计与优化 * 高性能mysql * MySQL技术内幕---Innodb存储引擎 * 分布式数据库架构及企业实践_基于Mycat中间件 * MySQL官网 ## Maven * Maven实战 ## Shiro * 跟我学Shiro教程 ## MongoDB * MongoDB权威指南(第2版) ## Elasticsearch * Elasticsearch大数据搜索引擎 -- (这本书不太好,概念不讲清楚,罗列代码,没有说明为什么要这么写) * Elasticsearch服务器开发(第2版) --(这两本全面讲解ela的基本概念和使用,适合初学者) * Elasticsearch权威指南(中文版) * 深入理解ElasticSearch 原书第2版 --(深入讲解实现原理) ## 消息中间件 * 分布式消息中间件实践 ## RabbitMQ * RabbitMQ实战指南 * RabbitMQ实战 高效部署分布式消息队列 * RabbitMQ官网 ## RocketMQ * RocketMQ技术内幕 * RocketMQ实战与原理解析 ## KAFKA * Kafka入门与实践 ## Zookeeper * Zookeeper 分布式过程协同技术详解 ## Netty * Netty权威指南 ## Nginx * Nginx高性能Web服务器详解 * Nginx高性能Web服务器实战教程 * 深入理解Nginx模块开发与架构解析第2版LinuxUnix技术丛书 ## Spring * 精通Spring+4.x++企业应用开发实战 * Spring源码深度解析 * Spring 揭秘 * Spring Boot * Spring Boot 2精髓 从构建小系统到架构分布式大系统 * 深入实践Spring+Boot * Spring Boot实战 * Spring Cloud * Spring Cloud与Docker微服务架构实战(仅讲解如何使用,没有原理说明) * Spring Cloud微服务实战 * 深入理解Spring+Cloud与微服务构建 * Spring Cloud微服务架构进阶 ## Mybatis * MyBatis从入门到精通 * 深入浅出MyBatis技术原理与实战 ## Dubbo * 官方文档 ## docker * 第一本DOCKER书 * 没什么难的Docker入门与开发实战 * Docker开发指南 * Docker开发实践(推荐这本书) ## Jenkins * Jenkins权威指南 :white_check_mark: ## Tomcat * Tomcat与Java Web开发技术详解 * Tomcat架构解析 * Tomcat内核设计剖析 ## 数据结构和算法 * 算法图解 * 程序员代码面试指南 IT名企算法与数据结构题目最优解 * 大话数据结构 * 算法 * Java数据结构和算法 * 数据结构与算法分析 Java语言描述 * 算法导论 ## Java编程规范 * 阿里巴巴Java开发手册 * 重构,改善既有代码的设计 * 敏捷软件开发 * 单元测试之道Java版 --(对单测的基本概念讲解,没接触过单测的可以看看) ## 网络 * 图解HTTP --(这两本书是对HTTP/TCP总概括,先看这两本了解基本概念,再通过下面两本深入了解) * 图解TCP/IP * TCP/IP详解 --(如果不从事协议开发,看卷一即可) * HTTP权威指南 --(对HTTP相对完整的描述) ## 网络安全 * 白帽子讲Web安全纪念版 * Web安全深度剖析 ## 架构 * 亿级流量网站架构核心技术 跟开涛学搭建高可用高并发系统 * 分布式JAVA应用 基础与实践 * 大型分布式网站架构设计与实践 * 大型网站系统与Java中间件实践 * 大规模分布式存储系统:原理解析与架构实战 * 实战Java高并发程序设计 * 大型网站技术架构:核心原理与案例分析 * 高扩展性网站的50条原则 * 架构及未来:现代企业可扩展的web架构,流程,组织 * 系统架构:复杂系统的产品设计和开发 * 大型分布式存储系统:原理解析和架构实战 * 阿里巴巴技术演与超越 * 架构探险:从零开始写分布式服务框架 * 软件架构师的12项修炼 * 分布式服务框架原理与实践 * Designing Data-Intensive Applications 目前只有英文版的 ## 其他 * 颈椎病的防治与治疗 --(关注自身健康,拒绝ICU) # 常用工具 ## 编译器 * IDEA (个人觉得IDEA比较好用) * Eclipse * MyEclipse ## IDEA插件 * Lombok: 使用注解,免去实体类中get /set/构造器等代码 ,需要引入lombok包 * Alibaba Java Coding Guidelines :《阿里巴巴Java开发规约》扫描插件,安装后右键单击选择扫描,会提示哪些地方不符合规范 * MyBatis plugin : 可以从mybatis mappe接口的方法直接跳转到mapper.xml配置文件 * jclasslib: JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Class文件与字节码 ## 数据库管理 * mysql workbench ## UML绘制 * https://www.draw.io/ :在线UML绘制工具,可以保存到本地或者Github ## HTTP请求 * POSTMAN(https://www.getpostman.com/):一款功能强大的网页调试与发送网页HTTP请求的工具 * curl指令 ## 前端开发编辑 * [vscode](https://code.visualstudio.com/Download) * IDEA * Brackets 代码提示,颜色区分 * sublime_text_3 这个Linux下安装后,不支持中文输入,网上有解决办法。 ## 思维导图软件 * MindMaster 多平台,免费,可以导出为图片。 ## 编辑器 * VIM * GEDIT  ## 调优工具 * visualVm(https://visualvm.github.io/):是一款免费的,集成了多个 JDK 命令行工具的可视化工具,它能为您提供强大的分析能力,对 Java 应用程序做性能分析和调优. ## 压测工具 * Jmeter 可以开多个线程对接口进行压测,并分析压测结果。 ## 版本管理 * git * svn * 码云 * Git在线练习 [try git](https://try.github.io/)/[git real](https://www.pluralsight.com/courses/code-school-git-real)/[Learn Git Branching](https://learngitbranching.js.org/) ## 其他 * SpringBoot Banner 字符生成 [根据图片生成](https://www.degraeve.com/img2txt.php)/[根据文字生成](http://patorjk.com/software/taag/#p=display&f=3D-ASCII&t=MicroBlog%0A)