** This article is mainly about Xiaobai Java Learning route , The whole learning route is very clear , Suitable for all levels of Java Self scholars , Very comprehensive Java Learning route .
Sorting is not easy to , Remember to give me a compliment ~**
There are dry goods 、 There are more stories , WeChat search 【 Programming means North 】 Focus on this different programmer , Wait for you to flirt ~
The first stage ：Java Basics
Learn any programming language , The first thing to learn is basic grammar , Turn on Java The first step in learning , Of course, it is to have a deep understanding of the fundamentals of computers 、 Basic programming syntax , object-oriented , aggregate 、IO flow 、 Threads 、 Concurrent 、 Exception and network programming , These are what we call JavaSE Basics .
When you've got it , You can do things like ： The thunderbolt download software installed on the computer 、QQ Chat client 、 Attendance management system and other desktop software .
The second stage ： database
The most valuable thing about the Internet is data , Any programming language needs to solve the problem of data storage , The key technology of data storage is database .MySQL and Oracle Are widely welcomed by enterprises database management system .Java The most common technique for communication between programs and databases is JDBC,Druid and C3P0.
After learning these database technologies , Can master database operation and maintenance technology 、 Specification for complex business table structure design 、 Common in work SQL operation 、 Software data storage, etc .
The third stage ： The front-end technology
After learning these techniques , We can develop wechat apps 、 Responsive websites 、 Mobile website 、 Develop something similar to Jingdong B2B2C Shopping Mall 、 Managing the backstage, etc .
The fourth stage ：JavaWeb Dynamic web pages
Master the front-end technology can only do static website , But its page data remains unchanged , The dynamic website can display different contents according to the changed data in the database , More widely used , So programmers have to learn how to do dynamic websites .
Use Java Do dynamic website , We need to learn Servlet、Filter、Session、Cookie、JSP、EL expression 、JSTL Do dynamic website complete knowledge system , After learning, you can develop OA System 、 Content sites 、BBS etc. .
The fifth stage ：Java Programming enhancements
I learned from the front JavaSE Basics , But it's not very efficient in enterprise applications 、 Poor expansion , Programming enhancement is for JavaSE Strengthening the foundation , Will be targeted to improve the program processing business execution efficiency 、 Enhance program extensibility . Programming reinforcement will enhance advanced multi-threaded learning , Involving thread memory 、 Thread communication and other technologies .
After learning , Can increase the knowledge of an intermediate programmer , Whether in the interview process or in the future, lay a good foundation for the in-depth technology .
Phase 6 ： Software project management
Company development is team collaborative development , In order to better grasp the actual development , We also need to learn about common project management platforms 、 Version controller 、 Project building tools and automated deployment tools . Project development must have version upgrade , Managing the project schedule and release needs Git、Maven、Sonar Such a system platform .
After learning software project management , Will master the actual development process of the whole project and the collaborative development tools used in the whole project development process .
The seventh stage ： Popular technology framework
Javaweb After mastering , Already have the ability to develop actual projects in the enterprise , But it's inefficient , A lot of code , Long development cycle 、 High development cost . Some excellent framework technologies are widely used in enterprises to solve the above problems , So we also need to learn framework technology , The mainstream of project development is Java Framework technology has SpringMVC、Spring、MyBatis、MyBatis Plus、SpringData etc. .
These framework technologies are necessary skills for a good programmer .
The eighth stage ： Distributed architecture
In the process of enterprise development , The number of business and users is increasing gradually , In order to ensure the availability of the system , The more complex the system is , More R & D personnel , It's hard to maintain a complex system together , Often modify part of the content , It leads to pulling a hair and moving the whole body , So we need to upgrade the system architecture , Technologies that need to use distributed microservices .
After studying this stage of the course , Can have a large SOA Architecture and microservice architecture capabilities , Be able to master the necessary technology and practical experience of large micro service projects .
The ninth stage ： Server middleware
In a distributed system architecture , Asynchronous communication between services , Is one of the most common requirements , The birth of message middleware is to solve this kind of problem . At present, the mainstream message middleware on the market has RabbitMQ、RocketMQ、Kafka, We're going to learn this 3 Message middleware , Implement asynchronous communication in distributed projects .
After learning this , It can realize asynchronous communication of distributed projects 、 Distributed application log collection 、 Distributed transactions, etc .
Stage 10 ： Server technology
After the program is developed , We package them and deploy them to the server to run , So we need to learn common server technologies , Common servers are Linux and Window server,Linux High performance , It's the current mainstream .
The project we have written needs to be run with a piece of software , This software is called web Containers , We need to install it on the server web Container to publish the project , The current mainstream web The container has tomcat、jetty、nginx、undertow.
Stage 11 ： Container technology
With the server operating system and web Containers , We can deploy stand-alone sites , In distributed systems , Dozens and hundreds of services , If you use the stand-alone deployment method , It's going to take a lot of manpower , At the same time, there is a high probability of making mistakes . So server virtualization technology Docker Also known as today's essential technology ,Docker It can help operation and maintenance personnel to implement rapid deployment , Batch maintenance . Use Kubernetes Automated deployment 、 Large scale scalability 、 Application container management .
Stage 12 ： Enterprise business solutions
Some common business scenarios will be encountered in enterprise development , Such as ： Search engine 、 cache 、 Timing task 、 workflow 、 Report export 、 Log management 、 System monitoring, etc , Well, these common solutions also have excellent free open source middleware out of the box , available .
Such as ：ElasticSearch、Lucene、Solr、redis、MongoDB、slf4J、ECharts、Quartz、POI etc. . Business solutions and technical difficulties of business solutions course , Solve the problem of enterprise development 90% The above pain points and difficulties .
Articles are constantly updated , The full text starts with the personal official account of the self , You can search through wechat 「 Programming means North 」 First time reading , The background to reply 【 pdf】 There are hundreds of classic computer books I have collected .