How to systematically self-learn Java technology? Master the following technical knowledge points and get a salary of 20k is no problem!

The veteran driver who has been playing Java for many years will take you on the car to learn Java comprehensively, and can also teach you how to learn to get a good offer this year.

Speaking of the comprehensive system, it is based on the knowledge content required by most companies at present. After all, we learn Java for high-paying jobs. The "Historical Records" says that "the world is full of benefits, and the world is bustling for benefits. To "learn Java technology for a high-paying job, this is human nature, and it is also the goal of most people.

Let's take a look at what skills are needed to recruit Java programmers in the market:

Everyone has looked at the recruitment requirements of the above three companies and found that the current requirements for junior Java engineers are similar, and the main frameworks are SpringMVC, Mybatis, SpringBoot, and SpringCloud. The databases are MySQL and Oracle. Generally, small and medium-sized companies use MySQL, while slightly larger companies are mainly Oracle, as well as basic content related to the Web and the use of tools such as git, Maven, and SVN.

Therefore, we must first understand what technology needs to be learned in the current market. The knowledge you have learned must be useful and keep up with the forefront of the times. The so-called comprehensive and systematic learning of Java, we must first understand what we should learn.

The Java content of the comprehensive system is as follows:

One, JavaSE basic articles

JavaSE is a standard version, which is the basic part of the Java language. Various frameworks derived from Java (such as the Spring series) and various products are based on the JavaSE standard. JavaSE is the foundation for the upward development of Java and the underlying foundation for any advanced Java product. They are all JavaSE, which is the "daddy" of all children in general. If you don't learn JavaSE well and don't understand it thoroughly, it will be like a book when you learn the framework later, so the importance of this part of JavaSE is self-evident, and I hope you will remember it.

Mainly include content: data types, basic syntax, operators, process control, arrays, object-oriented, common classes, exception handling, collections, IO streams, multithreading, reflection, annotation, analysis, network programming.

If there is a lack of basic introductory video tutorials in the process of getting started learning Java, you can apply to join my Java novice learning exchange group: 798844620, which contains the latest Java basics and intensive video tutorials in 2020, and the group file contains me doing Java technology. Some study manuals, interview questions, development tools, PDF documents, books and tutorials compiled over a period of time.

PS: The content of JavaSE is very large. Any set of JavaSE tutorials will not explain all the methods, but will only choose the content commonly used in daily work to explain, so many of the content in JavaSE is in the API documentation after class. Slowly understand, you must learn to learn actively, and you can't just sit back and wait.

Recommended books for learning: Java Core Technology
This book is written by Lao Mei. Since its publication, it has been favored by the majority of Java programmers. It is a popular Java classic. Covers all the basic knowledge of the Java Platform Standard Edition JavaSE, provides a large number of complete and practical application examples, and introduces in detail the basic knowledge of the Java language, object-oriented programming, interfaces and internal classes, event listener models, and swing graphical users Interface programming, packaged applications, exception handling, login and debugging, generic programming, collection framework, multithreading, etc. (This book is a must-read book for every Java programmer)


Two, database articles

Database is a must-learn content for learning Java language. Common databases are MySQL and Oracle. As a beginner, you usually learn MySQL. Generally, small and medium-sized enterprises will choose MySQL database. Larger Internet companies I will choose to use Oracle, and learning Oracle is more complicated than MySQL. It is recommended that you mainly learn MySQL database, and you can learn about Oracle. Learning the database is relatively simple, and the basic operation is to add, delete, modify and check.

Three, web development

Web front-end content: HTML/CSS/JavaScript/ (front-end page)
Note: Java back-end development can not pay too much attention to the processing of HTML pages and CSS, but at least you need to use simple HTML, JavaScript is necessary, because After all, Javaweb back-end programmers have to be exposed to using AJAX to process data and display. Of course, if you only focus on server-side implementation without considering any user interface, you don’t need to focus on HTML, CSS, and JavaScript. However, although there are many developments that completely separate from the front-end, it is impossible to not care about the front-end, especially JavaScript, but The front end can completely ignore any implementation of the server backend.

Recommended study books: "JavaScript DOM Programming Art" (Second Edition)
This book is reasonable as the most recommended front-end introductory book. He can really let everyone understand dom script programming, or the ideas and principles behind front-end programming technology. For beginners, this book does not have any threshold, just follow the book example to write code step by step. We will know how to operate and control browser elements, and will learn how to achieve simple page effects. This simple and easy sense of accomplishment is the most valuable experience when starting a programming language.

JavaEE content:
Although Servlet/JSP is rarely used on the Internet now, it may be replaced by some templates or JS AJAX methods, but I think it should be contacted, if it is used, it won’t do anything, and it It is a standard component of Java EE dynamic web page implementation. Learning the JSP process can also help us better understand the process of web sessions, and master what we must know about web sessions. If you don’t learn Javaweb or JSP, it’s equivalent to learning to use Springboot without touching SpringFramework at all. Including the concepts that we must know to develop Javaweb, such as Web application context, request object, response object, HttpSession, Cookie, etc. are all embodied in the contact learning JSP and Servelt, as well as some rarer EJB JSF JMS and Java Felix.

Some beginners are not clear about these inevitably and there will be misunderstandings, especially some more mature engineers say the same, I can only say that they are very ignorant, just code machines, in fact, they are confused about application development and design.

There is no technology that will never be eliminated and there is no universal technology that will always be popular. It depends on the environment and application. The technology and tools that meet my needs are good and right.

Four, advanced framework

1. Springframework core IOC container
2. Spring boot is a more comprehensive and efficient Spring tool based on Spring
3. ORM framework is more popular today is Mybatis and MP (Mybatis plug-in), Hibernate is optional for learning
4. Template technology, relatively mature Freemarker
5, Spring Cloud microservice framework, and a full set of distributed system solutions provided by Spring Cloud.

Five, tools

Maven is a tool for building and managing projects, while svn and git are project source code and related documentation management tools developed by the team. Learners need to master their applications.
Tomcat, jetty, resin, JBoss, GlassFish, etc. are all servers that deploy and run Java web applications.

The above is the content that beginners probably learn. I try to stand from the perspective of beginners. It is not particularly complicated to write. I am afraid that beginners will not understand it and there is no substantial help. So I try to use the vernacular to make it simpler, and list the main Java knowledge points for everyone.

Knowing the general content of Java to learn, the following is how to learn Java in the best way, so as to reach the level of employment. First, we should understand the current level of finding a job and what it should be.

To what extent can Java learn to reach the level of employment:

For most students who are new to Java, what I am most concerned about is what I have to learn and to what extent I can find relevant Java R&D jobs. Different software companies have different requirements for the level of R&D personnel. If from the perspective of most small and medium-sized enterprises, an IT technician who can enter the company usually needs to have the following capabilities.

1 Understand and master Java's core object-oriented design ideas and code construction, and be able to design and write business functions in an object-oriented manner;
2 Be proficient in the development of at least two databases, such as Oracle, mySql, and be proficient in writing basic and advanced SQL statements;
3 Must master and proficiently apply the Springframework IOC container, have an in-depth understanding of IOC and AOP concepts and applications, and use MVC to implement web request processing;
4 Proficiency in the ORM framework myBatis and JDBCTemplate for processing databases in Java, and an understanding of Hibernate;
5 skilled application Spring enhancement tool set Spring Boot;
. 6 skilled least using Eclipse and IDEA integrated development tool for building applications;
7 can be substantially grasp MVN GIT Maven used in the project;
8 front-end development must master JavaScript and commonly JS framework
of these These are the basic requirements for entry of small and medium software companies. If you can reach this level, it should not be difficult to find a Java job.

Recommended learning method: system video tutorial + book assistance + someone guided
video tutorial: for Java beginners, watching video learning is also the most common way, video tutorials will explain common knowledge in work, and videos are generally It is divided into chapters and sections, and each section only talks about one knowledge point, which makes it clearer to learn. But the video tutorial should be as complete as possible, preferably a complete set of video learning.

Book assistance: Books are convenient for supplementing theoretical knowledge, so that it is easier to understand Java's object-oriented core design concepts and code practice functions.

PS: But most people don't have the patience to read the book, so most people just watch video tutorials to learn. If you can see, you can watch, and if you can't, don't watch.

Someone’s guidance: Most people can’t learn Java very well by their own ability, because you don’t know the industry or how to learn it. If you want to find a job by self-study Java with zero foundation, the probability is extremely low. Therefore, it is recommended that if you really want to do this, try to find someone to take you with you. If you don’t understand, you can ask directly, avoid detours and improve efficiency. The quality of learning determines the salary and starting point of future work, so it should be taken seriously. In the process of getting started learning Java, if you encounter any questions about learning methods, learning routes, learning efficiency, etc., you can apply to join my Java novice learning exchange group: 798844620 , if you don't understand, please feel free to ask.

Importance of the project

Many Java beginners say they "will" after watching some videos and after learning for a while. Here I need to correct a problem for everyone. I hope that everyone who learns Java can know what the center of learning programming is. In fact, in my opinion, learning to program has never been such a saying. Learning programming is different from mathematics, physics, and chemistry in junior high school. Remember some formulas and do the same type of exercises to prove that you can do similar types of problems. Programming only talks about the level and level of technical ability. The most proof of the technical level is at what stage is in the process of doing the project, the quality of the developed Internet products, the quality of the code written, and the troubleshooting ability , How about the ability to find bugs, how about the ability to conceive the overall layout of functional modules, etc. If you want to reach the entry level as a beginner, you have to have the coding ability of some simple projects. The most important thing for a beginner is to cultivate your own programming thinking. Every program is different and you can't memorize it all. , Learning programming does not rely on rote memorization. Only when you can code and write something independently can you get a job.

Therefore, the ability to do a project can measure the level of a learning level, and those who say "yes" often have not written much code, and they can't do a project. This is just talking on paper, completely misinterpreted. I don’t know what I’m learning to learn programming, and I don’t know where I should go.

Therefore, in the overall process of learning, a Java beginner must have two projects that can be obtained and can be written on the resume as capital for finding a job, and must have a good understanding of the ins and outs of these two projects. Maybe the interview is successful at the end. After learning all the content of Java, if a beginner is still unable to do a simple project, then his entire learning process is in vain. If the final learning goal is not reached, the quality of learning is not good enough. So the importance of the project I hope everyone is clear, because there are too many Java beginners do not know what the purpose of the final learning is, and finally wasted time.

Learning mentality:

Learning to program is definitely not a simple task. In other words, it is still quite difficult. After all, it is possible to go out and find a job, which can range from five to six thousand to tens of thousands. None of these knowledge is casual or anyone can learn. Regarding this learning attitude, I hope to remind everyone to focus on "learning", because I found that many Java beginners learn like "complete tasks". The so-called task completion is "I watch these videos Will I be able to find a job when I finish it?” “Can I find a job after I have learned all this?” Learning is not the same as “learning”. These are two different concepts.

Did you understand it?
Can you apply it?
Are you paying attention?

You should be the clearest. I found that those who treat learning as completing tasks are not patient. They deceive themselves in their hearts, "I can find a job after watching these videos." In the end, I gradually understood that I was deceiving myself and others, and finally gave up saying that I was not suitable for learning this. In fact, there is only one truth in unmasking these people: they have no patience to study, and they don't like to study. This is caused by previous experience and caused by many years of habit.

Therefore, the correct learning mentality must focus on the learning itself. You have to learn this knowledge, these contents, and these technologies, which need to be gradually accumulated day by day, and no results can be achieved in a short time.

PS: If you have no patience and interest in learning, I advise you not to learn programming. Learning programming is definitely a patient job, and it is an industry that requires continuous learning and charging. In other words, in the information age, people who don’t like learning and those who have the patience to learn knowledge can’t get along in the information age. This is true in any industry. Those who don’t learn, progress, and stay close to the times must Will be eliminated.

In the end, those who can work by self-study Java basically have the following points:
1. Have super learning patience and enterprising
2. Not lazy hands, write enough code, practice makes perfect
3. Have a certain learning ability, be good at self-study and be good at solving by yourself Question
4. Can write some simple projects independently

The above content is written by myself. From the perspective of Java beginners, I hope that you can use easy-to-understand language to let everyone clearly understand the learning content of learning Java comprehensive system, and to what degree can you get it An offer for a Java job, I hope it can help everyone.

Guess you like

Origin blog.csdn.net/weixin_46898270/article/details/107929459