It is recommended that you read through online reading websites for a better experience and faster speed! Address: javaguide.cn.
- Interview special edition : Friends who are preparing for Java interviews can consider the interview special edition: "Java Interview Guide" (high quality, specially created for interviews, and consumed with JavaGuide).
- Knowledge Planet : Exclusive interview booklet/one-on-one communication/resume modification/exclusive job search guide, welcome to join JavaGuide Knowledge Planet (click the link to view the detailed introduction of the planet, be sure you really need to join again).
- Suggestions for use : Skilled interviewers always explore technical issues based on project experience. Be sure not to memorize technical eight-part essays by rote! For detailed learning suggestions, please refer to: JavaGuide usage suggestions.
- Ask for a Star : If you think the content of JavaGuide is helpful to you, please click a free Star. This is the greatest encouragement to me. Thank you for walking together and encouraging each other! Github address: https://github.com/Snailclimb/JavaGuide.
- Note for reprinting : All the following articles are original to JavaGuide unless stated as reprinted at the beginning of the article. Please indicate the source at the beginning of the article for reprinting. If malicious plagiarism/transportation is discovered, legal weapons will be used to protect one's rights. Let us maintain a good technical creation environment together!
Project related
- Project introduction
- Usage suggestions
- Contribution Guide
- FAQ
Java
Base
Summary of knowledge points/interview questions : (must read: +1: ):
- Java basic common knowledge points & summary of interview questions (Part 1)
- Java basic common knowledge points & summary of interview questions (Part 2)
- Java basic common knowledge points & summary of interview questions (Part 2)
Detailed explanation of important knowledge points :
- Why is there only passing by value in Java?
- Detailed explanation of Java serialization
- Detailed explanation of generics & wildcards
- Detailed explanation of Java reflection mechanism
- Detailed explanation of Java proxy mode
- BigDecimal detailed explanation
- Detailed explanation of Java magic class Unsafe
- Detailed explanation of Java SPI mechanism
- Detailed explanation of Java syntactic sugar
gather
Summary of knowledge points/interview questions :
- Java collection common knowledge points & summary of interview questions (Part 1) (must read?)
- Java collection common knowledge points & summary of interview questions (Part 2) (must read?)
- Summary of precautions for using Java containers
Source code analysis :
- ArrayList core source code + expansion mechanism analysis
- LinkedList core source code analysis
- HashMap core source code + underlying data structure analysis
- ConcurrentHashMap core source code + underlying data structure analysis
- LinkedHashMap core source code analysis
- CopyOnWriteArrayList core source code analysis
- ArrayBlockingQueue core source code analysis
- PriorityQueue core source code analysis
- DelayQueue core source code analysis
IO
- Summary of IO basic knowledge
- Summary of IO design patterns
- Detailed explanation of IO model
- NIO core knowledge summary
concurrent
Summary of knowledge points/interview questions : (must read?)
- Java concurrency common knowledge points & summary of interview questions (Part 1)
- Java concurrency common knowledge points & summary of interview questions (Part 2)
- Java concurrency common knowledge points & summary of interview questions (Part 2)
Detailed explanation of important knowledge points :
- Detailed explanation of optimistic locking and pessimistic locking
- CAS detailed explanation
- Detailed explanation of JMM (Java Memory Model)
- Thread Pool : Detailed Explanation of Java Thread Pool, Best Practices of Java Thread Pool
- ThreadLocal detailed explanation
- Java concurrent container summary
- Atomic atomic class summary
- AQS detailed explanation
- Detailed explanation of CompletableFuture
JVM (must see?)
This part of JVM mainly refers to the JVM virtual machine specification-Java8 and "In-depth Understanding of Java Virtual Machine (3rd Edition)" by Mr. Zhou Zhiming (strongly recommended to read it multiple times!).
- Java memory area
- JVM garbage collection
- Class file structure
- Class loading process
- class loader
- [To be completed] Summary of the most important JVM parameters (the translation is half complete)
- [Additional meal] Let’s get to know the JVM in plain English
- JDK monitoring and troubleshooting tools
new features
- Java 8 : Summary of new features of Java 8 (translation), summary of common new features of Java 8
- Overview of new features in Java 9
- Overview of new features in Java 10
- Overview of new features in Java 11
- Overview of new features in Java 12 & 13
- Overview of new features in Java 14 & 15
- Overview of new features in Java 16
- Overview of new features in Java 17
- Overview of new features in Java 18
- Overview of new features in Java 19
- Overview of new features in Java 20
- Overview of new features in Java 21
- Overview of new features in Java 22 & 23
computer basics
operating system
- Common operating system knowledge points & summary of interview questions (Part 1)
- Common operating system knowledge points & summary of interview questions (Part 2)
- Linux :
- Summary of basic Linux knowledge necessary for back-end programmers
- Summary of basic knowledge of Shell programming
network
Summary of knowledge points/interview questions :
- Common computer network knowledge points & summary of interview questions (Part 1)
- Common computer network knowledge points & summary of interview questions (Part 2)
- Summary of the contents of "Computer Network" by Teacher Xie Xiren (Supplement)
Detailed explanation of important knowledge points :
- Detailed explanation of OSI and TCP/IP network layering models (basics)
- Summary of common protocols in the application layer (application layer)
- HTTP vs HTTPS (application layer)
- HTTP 1.0 vs HTTP 1.1 (application layer)
- HTTP common status codes (application layer)
- Detailed explanation of DNS domain name system (application layer)
- TCP three-way handshake and four-way wave (transport layer)
- TCP transmission reliability guarantee (transport layer)
- Detailed explanation of ARP protocol (network layer)
- Detailed explanation of NAT protocol (network layer)
- Summary of common means of network attacks (security)
data structure
Graphical data structure:
- Linear data structures: arrays, linked lists, stacks, queues
- picture
- heap
- Tree: focus on red-black trees, B-, B+, B* trees, LSM trees
Other commonly used data structures:
algorithm
This part of the algorithm is very important. If you don’t know how to learn algorithms, you can read what I wrote:
- Algorithm learning books + resource recommendations.
- How to flash Leetcode?
Summary of common algorithm problems :
- Summary of several common string algorithm questions
- Summary of several common linked list algorithm questions
- The sword points to some programming questions in the offer
- Top ten classic sorting algorithms
In addition, the website GeeksforGeeks summarizes common algorithms and is more comprehensive and systematic.
database
Base
- Summary of database basic knowledge
- Summary of NoSQL basic knowledge
- Detailed explanation of character sets
- SQL:
- Summary of basic knowledge of SQL syntax
- Summary of common SQL interview questions
MySQL
Summary of knowledge points/interview questions:
- MySQL common knowledge points & summary of interview questions (must read?)
- Summary of recommendations for MySQL high-performance optimization specifications
Important knowledge points:
- Detailed explanation of MySQL index
- MySQL transaction isolation level (detailed graphic and text explanation)
- Detailed explanation of MySQL's three major logs (binlog, redo log and undo log)
- Implementation of MVCC by InnoDB storage engine
- The execution process of SQL statements in MySQL
- Detailed explanation of MySQL query cache
- MySQL execution plan analysis
- Does MySQL’s auto-incrementing primary key have to be continuous?
- MySQL time type data storage recommendations
- MySQL implicit conversion causes index failure
Redis
Summary of knowledge points/interview questions : (must read: +1: ):
- Redis common knowledge points & summary of interview questions (Part 1)
- Redis common knowledge points & summary of interview questions (Part 2)
Important knowledge points:
- Detailed explanation of 3 commonly used cache read and write strategies
- Detailed explanation of 5 basic data structures of Redis
- Detailed explanation of 3 special data structures of Redis
- Detailed explanation of Redis persistence mechanism
- Detailed explanation of Redis memory fragmentation
- Summary of Common Redis Blocking Causes
- Detailed explanation of Redis cluster
MongoDB
- MongoDB common knowledge points & summary of interview questions (Part 1)
- MongoDB common knowledge points & summary of interview questions (Part 2)
search engine
Summary of common interview questions in Elasticsearch (paid)
development tools
Maven
- Summary of Maven core concepts
- Maven best practices
Gradle
Summary of Gradle core concepts (optional, Maven is still more common in China)
Docker
- Summary of Docker core concepts
- Docker in practice
Git
- Summary of Git core concepts
- Summary of GitHub practical tips
System design
- Summary of common system design interview questions
- Summary of common interview questions about design patterns
Base
- RestFul API brief tutorial
- A Concise Tutorial on Software Engineering A Concise Tutorial on Software Engineering
- Code Naming Guidelines
- Code Refactoring Guide
- Unit Testing Guide
Commonly used frameworks
Spring/SpringBoot (must read?)
Summary of knowledge points/interview questions :
- Spring common knowledge points & summary of interview questions
- SpringBoot common knowledge points & summary of interview questions
- Summary of Spring/Spring Boot common annotations
- SpringBoot Getting Started Guide
Detailed explanation of important knowledge points :
- Detailed explanation of IoC & AOP (understand quickly)
- Detailed explanation of Spring transactions
- Detailed explanation of design patterns in Spring
- Detailed explanation of SpringBoot automatic assembly principle
MyBatis
Summary of MyBatis common interview questions
Safety
Authentication and authorization
- Detailed explanation of basic concepts of authentication and authorization
- Detailed explanation of JWT basic concepts
- JWT advantages and disadvantages analysis and solutions to common problems
- Detailed explanation of SSO single sign-on
- Detailed explanation of permission system design
- Summary of common encryption algorithms
Data desensitization
Data desensitization means that we deform sensitive information data according to specific rules. For example, we use * to replace certain digits of mobile phone numbers and ID numbers.
Sensitive word filtering
Summary of sensitive word filtering solutions
scheduled tasks
Detailed explanation of Java scheduled tasks
Web real-time message push
Detailed explanation of Web real-time message push
distributed
Theory & Algorithm & Protocol
- Interpretation of CAP theory and BASE theory
- Interpretation of Paxos algorithm
- Interpretation of Raft algorithm
- Detailed explanation of Gossip protocol
RPC
- Summary of RPC basic knowledge
- Dubbo common knowledge points & summary of interview questions
ZooKeeper
These two articles may have overlapping content, so it is recommended to read them both.
- Summary of ZooKeeper related concepts (getting started)
- Summary of ZooKeeper related concepts (advanced)
API gateway
- Summary of API Gateway Basics
- Spring Cloud Gateway common knowledge points & summary of interview questions
Distributed ID
- Introduction to distributed ID & summary of implementation solutions
- Distributed ID Design Guide
Distributed lock
- Introduction to distributed locks
- Summary of common implementation solutions for distributed locks
Distributed transactions
Common knowledge points of distributed transactions & summary of interview questions
Distributed configuration center
Common knowledge points of distributed configuration center & summary of interview questions
high performance
Database optimization
- Database reading and writing separation and sub-database and sub-table
- Separation of hot and cold data
- Summary of common SQL optimization methods
- In-depth paging introduction and optimization suggestions
load balancing
Load balancing common knowledge points & summary of interview questions
CDN
CDN (content distribution network) common knowledge points & summary of interview questions
message queue
- Summary of basic knowledge of message queue
- Disruptor common knowledge points & summary of interview questions
- RabbitMQ common knowledge points & summary of interview questions
- RocketMQ common knowledge points & summary of interview questions
- Kafka common knowledge points & summary of interview questions
High availability
Highly available system design guide
Redundant design
Detailed explanation of redundant design
Current limiting
Detailed explanation of service current limit
Downgrade & circuit breaker
Detailed explanation of downgrade & circuit breaker
Timeout & Retry
Detailed explanation of timeout & retry
cluster
Deploy multiple copies of the same service to avoid single points of failure.
Disaster recovery design and multi-activity in remote locations
Disaster recovery = disaster recovery + backup.
- Backup : Make several copies of all important data generated by the system.
- Disaster recovery : Establish two identical systems in different places. When a system somewhere suddenly hangs up, the entire application system can be switched to another one so that the system can provide services normally.
Multi-activity in remote locations describes the deployment of services in remote locations and the services are provided to the outside world at the same time. The main difference from traditional disaster recovery design is "multi-activity", that is, all sites provide services to the outside world at the same time. Living in different places is to cope with emergencies such as fires, earthquakes and other natural or man-made disasters.
Star Trends
Official account
If you want to follow my updated articles and shared information in real time, you can follow my official account.