【发布时间】:2014-06-12 19:10:18
【问题描述】:
我是 Spring 新手。谁能告诉我 Spring 和 Spring MVC Framework 有什么区别?
【问题讨论】:
标签: java spring spring-mvc
我是 Spring 新手。谁能告诉我 Spring 和 Spring MVC Framework 有什么区别?
【问题讨论】:
标签: java spring spring-mvc
Spring 是一个很大的框架,其中包含很多组件。其中一个组件是 Spring MVC - 它是一个允许您根据模型-视图-控制器设计模式实现 Web 应用程序的组件。
【讨论】:
1-抽象词中的Spring是一个框架
Spring Framework 是一个开源的应用程序框架和 Java 平台的控制反转容器。
查看此链接了解更多信息:
Framework vs. Toolkit vs. Library
2-MVC架构
它是一种帮助开发人员分离 Web 应用程序构建块的架构。
Model View Controller 或俗称的 MVC,是一种用于开发 Web 应用程序的软件设计模式
查看此链接了解更多信息: Basic MVC Architecture
【讨论】:
MVC 是一个 Spring 模块。您可以使用它来设计 Web 应用程序。 Spring 中的 MVC 实现了前端控制器设计模式。在您的 web.xml 中,您将定义一个 servlet (DispatcherServlet),您的所有请求都将通过它,并由您定义的控制器 (@Controller) 处理。
【讨论】:
Spring 是一个有助于将不同组件连接在一起的框架。 IOC、AOP、Web MVC等模块有很多。Spring Framework是一个开源的应用框架和Java平台的控制反转容器。
Spring MVC(模型-视图-控制器)是整个 Spring 框架中的一个组件,用于支持 Web 应用程序的开发。
【讨论】:
Spring MVC 是整个 Spring Framework 中的一个组件,用于支持 Web 应用程序的开发。您可以使用任何 Web 容器,因此它适用于 Tomcat。只是认为 Spring 是一个第三方库。只需要将必要的jar文件放到lib目录下,定义几个xml文件即可。
所以基本上当你说 Spring 时它只是一个框架。通过框架,我的意思是很多功能/罐子。就像您可能拥有具有核心功能或 aspectj 等的核心一样。Spring MVC 即模型视图控制器是 Spring 框架提供的此类功能之一。您可以根据请求的 URL 模式将请求的处理推迟到各种控制器。可以参考
【讨论】:
如here 所述,Spring 框架可以可视化为 Enterprise JavaBeans (EJB) 模型的替代、替代甚至补充。这意味着开发分布式、可扩展、安全、事务性应用程序的框架。
Spring MVC 可以被认为是 Struts、Stripes、Tapestry 等的替代品,即表示层框架。
Spring 框架是 Spring MVC 的超集。
【讨论】:
表示各种项目的总称,其中之一是Spring Framework。
Spring Framework 项目有几个特点。其中之一是 Spring MVC。
Spring Framework 的特点是 -
Core Technologies:依赖注入、验证、数据绑定、类型转换、SpEL、AOP等
Data Access: 事务、DAO 支持、JDBC、ORM 等
Spring MVC 和 Spring WebFlux 网络框架。
Integration: JMS、JMX、电子邮件、日程安排等
Languages: Kotlin,Groovy,动态语言。
因此,Spring MVC 功能允许开发人员使用Spring Framework 遵循Model-view-controller 设计模式构建应用程序。
其他 Spring 项目
Spring Boot:用于使用Convention over configuration 设计范例创建独立的Spring 应用程序。
Spring Data:用于创建基于Spring 的数据访问编程模型。它有各种模块,如 Spring Data JDBC、Spring Data JPA、Spring Data MongoDB 等。
Spring Security:用于身份验证和授权的强大且高度可定制的身份验证和访问控制框架。
注意
Spring、Spring Framework 和 Spring MVC 这些术语在开发人员之间经常互换使用,这有时会给已经不了解细节的人造成混淆。
【讨论】: