The difference between springboot and springmvc is that springboot is just a configuration tool, integration tool, and auxiliary tool, while springmvc is the framework and the actual code running in the project.
spring boot is just a configuration tool, integration tool, and auxiliary tool.
springmvc is the framework, the actual code running in the project
The Spring framework is like a family, with many derivative products such as boot, security, jpa, etc. But their foundations are Spring's ioc and aop. ioc provides a dependency injection container, aop solves cross-section-oriented programming, and then based on these two, other advanced functions of extended products are implemented.
Spring MVC provides a lightly coupled way to develop web applications. It is a module of Spring and a web framework. With Dispatcher Servlet, ModelAndView and View Resolver, developing web applications becomes easy. The problem areas solved are website application or service development - URL routing, Session, template engine, static Web resources, etc.
Spring Boot implements automatic configuration and reduces the complexity of project construction. It is mainly designed to solve the problem that using the Spring framework requires a lot of configuration, so it is not a solution to replace Spring, but a tool that is closely integrated with the Spring framework to improve the Spring developer experience. At the same time, it integrates a large number of commonly used third-party library configurations (such as Jackson, JDBC, Mongo, Redis, Mail, etc.). These third-party libraries in Spring Boot applications can be used out-of-the-box with almost zero configuration (out-of-the- box).
Spring Boot is just a carrier to help you simplify the project construction process. If you are hosting a WEB project and use Spring MVC as the MVC framework, then the workflow is exactly the same as what you described above, because this part of the work is done by Spring MVC and not Spring Boot.
For users, after switching to Spring Boot, the project initialization method has changed, and the configuration file has changed. In addition, there is no need to install a container server such as Tomcat separately. Maven can just print the jar package and run it directly. website, but there is no change in your core business logic implementation and business process implementation.
Summary: Spring initially used "factory pattern" (DI) and "agent pattern" (AOP) to decouple application components. Everyone thought it was very useful, so they built an MVC framework (some components decoupled with Spring) based on this model and used it to develop web applications (SpringMVC). Then I found that I had to write a lot of boilerplate code for every development. In order to simplify the work process, I developed some "lazy integration packages" (starters), which are Spring Boot.
So, to summarize it in the most concise language:
Spring is an "engine";
Spring MVC is an MVC framework based on Spring;
Spring Boot is a set of rapid development integration packages based on Spring4's conditional registration.
Recommended tutorial: "java tutorial"
The above is the detailed content of The difference between springboot and springmvc. For more information, please follow other related articles on the PHP Chinese website!

The article discusses various Java garbage collection algorithms (Serial, Parallel, CMS, G1, ZGC), their performance impacts, and suitability for applications with large heaps.

The article discusses the Java Virtual Machine (JVM), detailing its role in running Java programs across different platforms. It explains the JVM's internal processes, key components, memory management, garbage collection, and performance optimizatio

Java's Nashorn engine enables JavaScript scripting within Java apps. Key steps include setting up Nashorn, managing scripts, and optimizing performance. Main issues involve security, memory management, and future compatibility due to Nashorn's deprec

Java's try-with-resources simplifies resource management by automatically closing resources like file streams or database connections, improving code readability and maintainability.

Java enums represent fixed sets of values, offering type safety, readability, and additional functionality through custom methods and constructors. They enhance code organization and can be used in switch statements for efficient value handling.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment