In recent years, there have been many JAVA frameworks like Spring Boot, Spring Cloud, Spring MVC, mybatis and so on.

Some people constantly feel that the technology updates too fast, they can not learn to learn.

But are these so-called new frameworks really new?

Take spring Boot, which has been popular for two years. It is not a new framework at all, but an integration of Spring and Spring MVC, which provides programmers with a more convenient and less configuration scaffolding.

Also take Spring MVC for example, its bottom layer is also based on servlet implementation, and the servlet, and JSP are basically the product of the same age, now hear JSP, does it feel like EJB, is the ancient times?

In fact, I think it is possible to develop an enterprise application without using any of these third-party frameworks. It is also possible to develop an enterprise application using JDBC and servlets alone, although it is very inefficient.

Therefore, as beginners, we should not take these frameworks so seriously, while now have time to learn more about the basic principles, such as data structures, computer networks, operating systems and so on.

Spring MVC is derived from servlet, and servlet relies on Web container. When it comes to Web container, it is inevitable to understand HTTP protocol, and HTTP is based on TCP. Seeing this, it is inevitable to need knowledge of computer network and operating system. But this knowledge is the key to writing a good application.

Maybe after a few years, there will be a few new frameworks, and then have to learn again?

In a few years, even JAVA may be replaced by other languages.

So, languages are just tools, frameworks are just tools.

If you look at the applications we’re writing, @autowired is everywhere, spring is everywhere, are we getting more and more coupled to Spring?

Framework writers have a deep belief in the framework they write, and the manuals they write generally describe how to use the framework from the point of view of being a true believer in the framework.

We need to look at the frameworks we use with a grain of salt and take a moment to think about whether we really need to use a framework in our software development.