The first step is to clarify which occupations are included in the back end: DBA (database maintenance and optimization expert), Developer (programmer), Architect (Architect), Scrum Master and the like (Agile development expert), Project Manager (Product dog), Maintenance&IT Support (communications and server related), of course, this is only a general classification, there is no clear boundary.

According to the internal work of the program: relational database, domain-driven Design, Design Pattern, Algorithm Algorithm, OBJECT-ORIENTED programming OOP (SOLID), thread safety, event-driven, test-driven development, dependency injection framework, etc.

For those of you who are new to Java and interested in back-end development, you should focus on the following sections:

Fundamentals: such as computer systems, algorithms, compilation principles, etc

Web development: Mainly Web development related content, including HTML/CSS/ JS (front-end page), Servlet/JSP (J2EE) and MySQL (database) related knowledge. They should be learned from front to back, so HTML/CSS/JS (front-end pages) should be learned first.

J2EE: What you need to learn is the Servlet/JSP (J2EE) section, which is the part of Java backend development that you must be very proficient in, so this section is the most effort of the three. As for the Servlet/Jsp part of the video selection, the industry is more recognized by ma Soldier’s video.

Finally, you need to learn how to use a database. Mysql is a good place to start, and the dominant relational database in the Java world is mysql. This is the part that you will be exposed to when you learn about servlets/JSPS, where the JDBC part is the database-related part. Not only should you be able to operate a database using JDBC, but you should also be able to use database client tools such as Navicat, SQLYog, or either.

 

 

Development framework: SSM framework is more mainstream at present, namely Spring, SpringMVC, Mybatis. You need to learn how to build these three frameworks and use them to create a simple add, delete, change and review Web project. You don’t have to understand what those configurations mean and why, but I’ll leave that for later. But you have to be able to quickly build a Web framework out of all three of them, and you can document your first build, and trust me, you’ll need it. One more thing to mention is that you may often come across a tool called Maven while building an SSM. This tool is almost a must in your future work, so you can learn about Maven as you build the SSM. At this stage, you only need to learn the basics of Maven on the Internet, and some of the more advanced uses will come as you gain experience.

 

Therefore, you need to look at the source code of some of the JDK classes, including the source code of the framework you are using. To be able to read the source code, you have to know a lot about design patterns. Otherwise, when you look at the source code, there will always be such a question, why is this code written this way? Why define this interface, which seems redundant? As you can see, these learning processes are interlinked, and if you fall behind at any one stage, you really can’t keep up, or step by step. And I can honestly tell you that I learned a lot more at this stage than is listed here.

 

In summary, at this stage, you need to dig deep into the Java infrastructure and Java libraries (for example, the concurrent book is Java and packages java.concurrent), i.e., the JVM and JDK. But also more in-depth to understand the framework you use, the more recommended way to read the source code or official documentation.